Objektorientierung ist ein modernes Konzept in der Programmierung. Dabei kann Objektorientierung als eine Technologie verstanden werden mit der Programmiersprachen so gestaltet sind, dass gezielt Objekte zur Gestaltung und Realisierung von Software genutzt wird.
Was ist Objektorientierung?
Mit der Objektorientierung verfügt jedes Objekt über eigene Daten und Logik. Jedes Objekt lässt sich somit in einer vom Programmierer vordefinierten Logik verwenden. Objektorientierte Softwareprogramme sind speziell so aufgebaut, dass einzelne Programmbestandteile modular konzipiert sind und zukünftige Codeerweiterungen somit einfach und schnell umsetzbar sind.
Vorteile von Objektorientierung
Die folgenden Merkmale gelten vielfach zugleich als Vorteile von Objektorientierung bei der Programmierung:
- Objekte, Klassen und Methoden
- Vererbung
- Kapselung
- Wiederverwendung
- Funktionen mit Parametern
- Punktnotation
- Abfrage von Eigenschaften
- Klassenbibliotheken
Vererbung und damit Wiederverwendung sind Konzepte, die dazu geführt haben, dass die Objektorientierung in den gesamten Entwicklungszyklus integriert wurde. Die Wiederverwendung von Softwarekomponenten in Form von Klassen erhöht im allgemeinen die Qualität von Software und trägt dazu bei Kosten zu reduzieren.
Wie funktioniert objektorientierte Programmierung?
Objektorientierte Programme nutzen Kapselung und Daten eines Objekts so eng mit seinen Funktionen zu verbinden, dass Objekt und Methoden nach außen hin nur gemeinsam – in Form von Ein- oder Ausgabedaten einer Operation – sichtbar werden. Somit erhöht sich durch objektorientierte Software auch die Sicherheit von Software, denn die interne Struktur der Daten bleibt nach außen genauso wie alle nicht als „öffentlich“ deklarierten Funktionen verborgen.
UML und Objektorientierung
Um Programmierkonzepte und Objektorientierung optimal zu verstehen ist die Modellierung eines Softwarekonzepts sinnvoll. Die Modellierungssprache UML hat ihre Wurzeln in der Objektorientierung und verwendet das Klassendiagramm sehr häufig. Die Beziehungen der Objekte zur Laufzeit werden mit Objektdiagrammen modelliert.
Objektorientierung und Agile Softwareentwicklung
Einer der größten Vorteile bei konsequenter Objektorientierung ist die beliebige Wiederverwendbarkeit definierter Programmlogik. Objektressourcen stehen in Form vielfältigster Objektklassen zur freien Verwendung.