Objektorientiertes Programmieren (Object Oriented Programming, OOP) ist ein allgemeines Paradigma in der Softwareentwicklung. Das Objekt ist eine Instanz einer Klasse. Objekte können nicht sofort erstellt werden. Es sollte einen Plan oder eine Beschreibung geben, um ein Objekt zu erstellen. Dieser Bauplan wird als Klasse bezeichnet. Eine Klasse enthält Eigenschaften und Methoden. Objekte werden mit Klassen erstellt. Klasse und Objekt ähneln einem Plan und einem Haus in der realen Welt. Es ist nicht möglich, ein Haus ohne einen richtigen Plan zu bauen. Ebenso wird eine Klasse zum Erstellen eines Objekts verwendet. Ein Objekt arbeitet mit anderen Objekten zusammen. Eine Verknüpfung mit repräsentiert die Beziehung von zwei oder mehr Objekten als "Assoziation". Aggregation und Zusammensetzung sind Assoziationsarten. Sie beschreiben die Beziehung zwischen Klassen. Dieser Artikel beschreibt den Unterschied zwischen Aggregation und Zusammensetzung. Das Hauptunterschied zwischen Aggregation und Zusammensetzung ist das Aggregation ist eine Verbindung zwischen zwei Objekten, die die Beziehung "hat eine" beschreibt, und die Zusammensetzung ist eine spezifischere Art von Aggregation, die Besitz impliziert.
1. Übersicht und Schlüsseldifferenz
2. Was ist Aggregation?
3. Was ist Komposition?
4. Ähnlichkeiten zwischen Aggregation und Zusammensetzung
5. Side-by-Side-Vergleich - Aggregation vs. Zusammensetzung in Tabellenform
6. Zusammenfassung
Eine Beziehung zwischen zwei Objekten wird durch Zeichnen einer Linie in Unified Modeling Language (UML) angezeigt. Der Link ist eine Assoziation. UML hilft, eine visuelle Darstellung des Systems zu erhalten. Es unterscheidet sich von regulären Programmiersprachen. Assoziation definiert auch die Vielzahl von Objekten. Sie sind Eins-zu-Eins, Eins-zu-Viele und Viele-zu-Viele. Wenn ein einzelnes Objekt der Klasse A mit dem einzelnen Objekt der Klasse B verknüpft ist, handelt es sich um eine Eins-zu-Eins-Beziehung. Ein Beispiel ist ein Autor, der ein Buch schreibt. In diesem Beispiel schreibt ein Autor ein Buch.
Wenn ein Objekt der Klasse A mit vielen Objekten der Klasse B verknüpft ist, handelt es sich um eine Eins-zu-Viele-Beziehung. Ein Beispiel ist, dass eine Abteilung viele Mitarbeiter haben kann. Wenn das Objekt der Klasse A vielen Objekten der Klasse B zugeordnet ist und ein Objekt der Klasse B vielen Objekten der Klasse A zugeordnet ist, handelt es sich um eine Viele-zu-Viele-Zuordnung. Ein Beispiel ist, dass ein Mitarbeiter an mehreren Projekten arbeiten kann und ein Projekt mehrere Mitarbeiter haben kann.
Aggregation ist eine Typenzuordnung, die die Beziehung zwischen Objekten näher beschreibt. Aggregation beschreibt "hat eine Beziehung". Einige Beispiele, die die Beziehung beschreiben, sind: Ein Schüler hat eine Schüler-ID, ein Fahrzeug hat einen Motor. Es ist auch möglich, eine große Menge mit der Beziehung zu erweitern. Einige Beispiele sind: Eine Bank hat viele Bankkonten, eine Klasse hat viele Schüler. Es kann anhand des folgenden Beispiels erklärt werden.
Abbildung 01: Aggregation
Gemäß dem obigen Beispiel besteht das Klassenzimmer aus einem Schüler oder vielen Schülern. Multiplizität wird auch verwendet, um die Anzahl der Objekte anzugeben. Es beschreibt, dass ein Klassenzimmer mehrere Schüler hat. Das Symbol des Diamanten steht für die Aggregation in UML. Schülerobjekte sind nicht auf das Klassenobjekt angewiesen. Wenn das Klassenobjekt zerstört wird, hat dies keine Auswirkungen auf die Schülerobjekte. Diese Objekte werden noch existieren.
Die Zusammensetzung ist eine spezifischere Form der Aggregation. Es beschreibt das Eigentum. Es kann anhand des folgenden Beispiels erklärt werden.
Abbildung 02: Zusammensetzung
Demnach besteht das Buchobjekt aus Seitenobjekt oder Seiten. Multiplizität wird auch verwendet, um die Anzahl der Objekte anzugeben. Es beschreibt, dass ein Klassenzimmer mehrere Schüler hat. Das hervorgehobene Diamantsymbol steht für die Komposition in UML. Da das Buch eine oder mehrere Seiten hat, handelt es sich um eine Aggregation, aber es ist genauer angegeben. Wenn das Buchobjekt zerstört wird, werden auch die Seitenobjekte zerstört. Seitenobjekte können nicht ohne das Buchobjekt existieren. Daher ist die Komposition eine spezifischere Form einer Aggregation, die Eigentum impliziert.
Aggregation vs. Zusammensetzung | |
Aggregation ist eine Verbindung zwischen zwei Objekten, die die Beziehung "hat eine" beschreibt. | Die Zusammensetzung ist die spezifischste Art der Aggregation, die Eigentum impliziert. |
UML-Symbol | |
Aggregation wird durch einen Diamanten bezeichnet. | Die Zusammensetzung wird durch einen hervorgehobenen Diamanten gekennzeichnet. |
Funktionalität | |
Wenn das besitzende Objekt zerstört wird, hat dies keine Auswirkungen auf das enthaltende Objekt. | Wenn in der Komposition das besitzende Objekt zerstört wird, hat dies Auswirkungen auf das enthaltende Objekt. |
Objektorientierte Programmierung ist ein Paradigma in der Softwareentwicklung. In OOP wird das System anhand von Objekten modelliert. Diese Objekte sind nicht isoliert vorhanden. Objekte arbeiten mit anderen Objekten zusammen. Die Beziehung zwischen Objekten wird als Assoziation bezeichnet. Aggregation und Zusammensetzung sind Assoziationsarten. Der Unterschied zwischen Aggregation und Zusammensetzung besteht darin, dass Aggregation eine Verbindung zwischen zwei Objekten ist, die die Beziehung „hat eine“ beschreibt, und Zusammensetzung ist die spezifischere Art der Aggregation, die Besitz impliziert. Aggregation und Zusammensetzung helfen, das Verhalten des Systems zu verstehen.
Sie können die PDF-Version dieses Artikels herunterladen und gemäß dem Zitiervermerk für Offline-Zwecke verwenden. Laden Sie die PDF-Version hier herunter. Unterschied zwischen Aggregation und Zusammensetzung
1.Tutorialspoint.com. "OOAD-Objektmodell". Die Stelle. Hier verfügbar
2.6 5 Verwendung von Aggregation und Zusammensetzung, Personenkarriere, 22. Mai 2015. Hier verfügbar