Zum Inhalt springen

Objektorientierte Programmierung (OOP)

oder auch OOP

Männliche Person, frontal, schaut in die Kamera; trägt kariertes Hemd über dunkelfarbigem T‑Shirt; heller Innenraum mit unscharfem Monitor oder Poster links und Fenster rechts.

von Richard Albrecht am 19.10.2026

Objektorientierte Programmierung ordnet ein Programm nach den Dingen, um die es geht. Jedes Ding kennt seine eigenen Daten und bringt die Funktionen mit, die darauf arbeiten.

Objektorientierte Programmierung

Eine Art, ein Programm zu ordnen: nach den Dingen, um die es geht, wobei jedes Ding seine Daten und die zugehörigen Funktionen zusammenhält.
Beispiel: „In der objektorientierten Programmierung weiß ein Produkt selbst, ob es noch lieferbar ist.“

Auch: OOP.

Abgrenzung zur prozeduralen Programmierung: Dort ist das Programm nach Arbeitsschritten geordnet, und die Daten liegen daneben. Beide Wege führen zum Ziel und kommen in denselben Projekten nebeneinander vor.

Der Grundgedanke

Ein Programm bildet meistens etwas aus der Wirklichkeit ab: Produkte, Kunden, Bestellungen. Die objektorientierte Programmierung nimmt das wörtlich und macht jedes dieser Dinge zu einem Objekt, das seine eigenen Daten trägt und die Funktionen mitbringt, die darauf arbeiten.

Ein Produkt weiß dann selbst, wie sein Bruttopreis zustande kommt. Der Code, der den Preis anzeigt, fragt das Produkt danach und muss die Regel nicht kennen. Ändert sie sich, ändert sie sich an einer Stelle.

Links ein Kasten mit der Aufschrift Klasse Produkt, darin die Felder Name, Preis und Bestand sowie die Methode istVerfuegbar. Pfeile führen nach rechts zu drei Kästen, die dieselben Felder tragen, aber mit eingetragenen Werten
Die Vorlage steht einmal im Code, die Objekte daraus entstehen zur Laufzeit und tragen eigene Werte.

Die vier Begriffe, die dazugehören

Eine Klasse ist die Vorlage, ein Objekt das fertige Ding daraus. Der Vorgang des Herstellens heißt beim new Erzeugen einer Instanz, und die Funktion, die dabei läuft, ist der Konstruktor. Laut MDN tut eine Klasse für sich allein nichts: Sie ist „eine Art Vorlage zum Erstellen konkreter Objekte dieses Typs“.

Dazu kommen zwei Prinzipien. Die Kapselung trennt, was ein Objekt nach außen zeigt, von dem, was es intern tut. Die Vererbung lässt eine Klasse von einer anderen abstammen und deren Daten und Funktionen übernehmen, ohne sie noch einmal aufzuschreiben.

Was davon im Alltag zählt

Für ein Gespräch über ein Projekt genügt die Kapselung. Sie erklärt, warum eine Änderung an der Preisberechnung manchmal zehn Minuten dauert und manchmal zwei Tage: Liegt die Regel an einer Stelle, ist sie schnell geändert. Liegt sie verstreut im Code, muss jemand sie erst einsammeln.

In unseren über 2.500 Website-Projekten ist das der häufigste Grund für Aufwände, die größer ausfallen als gedacht. Was alt gewachsen ist, hat seine Regeln selten an einer Stelle.

Siehe auch:

Klassen (Objektorientierung)

Die Vorlage, nach der gleichartige Objekte gebaut werden.

#Programmiersprachen

Objekte

Eine Einheit aus zusammengehörigen Daten und den Funktionen, die darauf arbeiten.

#Programmiersprachen

Funktionen

Ein benannter Abschnitt Code, der sich von anderer Stelle aufrufen lässt.

#Programmiersprachen

Programmiersprache

Eine künstliche Sprache mit festen Regeln, in der aufgeschrieben wird, was ein Rechner tun soll.

#Programmiersprachen

JavaScript

Die Programmiersprache, die in jedem Browser mitläuft und einer Seite Verhalten gibt.

#Programmiersprachen