13.01.2011

Objektorientierte Programmierung (OOP)

Das Ziel dieser auf der Konzeption der Objektorientierung basierenden Programmiermethode ist es, Daten und Funktionen möglichst als ein Objekt einzugrenzen, um Manipulationen oder auch die versehentliche Beeinflussung durch Fremdobjekte von außen zu verhindern.

Objektorientierte Programmierung - Evolution der Programmiersprachen © Flickr / dullhunk

Die Verschiedenheit von Programmierstilen fußt hierbei auf der Unterscheidung im für den Stil geltenden Regelsatz, also auf der Frage, gemäß welcher Vorgaben – zum Beispiel der Syntax, vorhandener Variablen oder Vorgaben zur Einrückung und Leerzeichen – der Quelltext einer Programmiersprache gesetzt wird. Objektorientierte Programmiersprachen verwenden stets einen spezifischen Datentyp: Das Objekt.

Objektorientierte Programmierung: Neuartige Terminologie

Vergleicht man nun die objektorientierte Programmierung mit anderen Programmierstilen, fällt auf, dass sich die OOP nicht nur in Form dieser Regelsätze, sondern auch durch die Art der verwendeten Begriffe unterscheidet.

Besonders wichtig – ja zentral – ist hierbei der Begriff des „Objekts“, welcher den Kernpunkt dieser Programmiermethode bildet und obendrein als Namensgeber fungierte. Die Programme werden also in einzelne Bausteine (Objekte) verpackt, die dann einzeln (objektorientiert) abgearbeitet werden. Weitere wichtige Begriffe aus der OOP-Terminologie sind: Abstraktion, Klasse, Prototyp, Datenkapselung, Polymorphie, Feedback, Vererbung und Persistenz.

Fokus: Datenkapselung

Sinn der Datenkapselung beim Programmieren ist das Verstecken von Implementierungsdetails. Die Objekte verfügen lediglich über fest definierte Schnittstellen. Allein über diese – und eben nicht direkt – kann der Zugriff auf die interne Datenstruktur der Objekte erfolgen. Demzufolge können die Objekte untereinander durch ungewolltes Interagieren ihre Zustände nicht unvorhergesehen beeinflussen.

Die Objekte gliedern sich dabei durch verschiedenartige Attribute in ableitbare (Vererbung) Klassen, deren Verhalten von den jeweiligen Klassen-Methoden bestimmt wird. Neue Objekte werden in der Regel durch Kopieren vorhandener Objekte – die als Prototypen fungieren – erzeugt.

Objektorientierte Programmiersprachen

Es existieren sowohl rein objektorientierte Programmiersprachen – wie etwa „Smalltalk“ – die wirklich alles, beispielsweise auch Ganzzahlen,  als eigene Objekte repräsentieren, als auch allgemeinere OOP-Sprachen (die weiter verbreitet sind) – wie C++, C# oder Java – die nicht strengstens dem Objektprinzip folgen, elementare Datentypen wie Ganzzahlen nicht prinzipiell als vollwertige Objekte betrachten und auch sonst dem Entwickler den Grad der Kapselung objektinterner Daten größtenteils freistellen.

Ähnliche Artikel

Kommentar schreiben
Name

E-Mail (wird nicht veröffentlicht)

Webseite (optional)

Nachricht