Benutzer:Wortwechsel/FUH/Objektorientierte Programmierung
Erscheinungsbild
- Objektorientierte Programmierung ist Programmentwicklung mit Hilfe objektorientierter Konzepte und Techniken.
- Objektorientierte Softwareentwicklung wird durch objektorientierte Techniken für Analyse, Entwicklung und Testen ergänzt.
Objektorientierte Programmierung
Objektorientierung: Konzepte und Stärken
Konzepte der Objektorientierung
Die Objektorientierung bezieht ihre gedanklichen Grundlagen aus Vorgängen der realen Welt. Vorgänge werden durch handelnde Individuen modelliert, die Aufträge erledigen und vergeben können. In der objektorientierten Programmierung werden die Individuen als Objekte bezeichnet.
- Nachrichten und Methoden: Ein zentraler Aspekt der Objektorientierung ist die Trennung von Auftragserteilung und Auftragsdurchführung. Dazu schickt ein Senderobjekt einem Empfängerobjekt eine Nachricht. Diese Nachricht besteht üblicherweise aus der Bezeichnung des Auftrags und weiteren Parametern. Das Empfängerobjekt besitzt eine bestimmte Methode, wie es den Auftrag durchführt, das Senderobjekt braucht die Methode nicht zu kennen.
- Klassifikation und Vererbung: Eine Klasse legt die Nachrichten und Eigenschaften fest, die allen ihren Objekten gemeinsam sind. Klassen lassen sich hierarchisch organisieren. Dabei besitzen die übergeordneten Klassen nur Eigenschaften, die den untergeordneten Klassen bzw. ihren Objekten gemeinsam sind.
Softwaretechnische Anforderungen
Objektorientierte Konzepte sind kein Allheilmittel; sie leisten aber einen wichtigen Beitrag zur Lösung bestimmter softwaretechnischer Probleme.
- Simulation diskreter Vorgänge: Modellierung der statischen Komponenten des zugrunde liegenden Systems. Beschreibung der möglichen Dynamik des Systems. Test und Analyse von Abläufen des Systems.
- Graphische Bedienoberflächen: Gestaltung der Oberfläche, um der Modellvorstellung des Benutzers von der gesteuerten Anwendung gerecht zu werden.
- Wiederverwendung von Programmen: Spezifikation der Eigenschaften der Programmbausteine, insbesondere derjenigen Eigenschaften, die an Schnittstellen, d.h. für Benutzer sichtbar sind. Programme müssen gut anpassbar und leicht erweiterbar sein, um sich für Wiederverwendung zu eignen. Anpassungen sollten möglich sein, ohne der Programmtext der verwendeten Bausteine manipulieren zu müssen.
- Verteilte Programmierung: Programmiermodell, in dem räumliche Verteilung von Daten und Programmteilen dargstellt werden kann, in dem Parallelität und Kommunikation in natürlicher Weise beschrieben werden können und das eine geeignete Partitionierung von Daten und Programmen in übertragbare Teile unterstützt.