Skillnaden mellan aggregation och sammansättning i UML
Nyckelskillnaden mellan aggregation och komposition
- Aggregation är en typ av association mellan två objekt som beskriver "ha en" relation, medan komposition är en specifik typ av aggregation som innebär ägande.
- Aggregation indikeras med en rak linje med en tom pilspets i ena änden. Å andra sidan indikeras kompositionen med en rak linje med en fylld pilspets vid någon av ändarna.
- I ett aggregeringsförhållande kan objekt som är associerade med varandra förbli inom ramen för ett system utan varandra. Men i ett kompositionsförhållande kan objekt som är förknippade med varandra inte förbli i omfånget utan varandra.
- I aggregation är länkade objekt inte beroende av det andra objektet, medan objekt i komposition är starkt beroende av varandra.
- I aggregering påverkar inte borttagning av ett enskilt element ett annat associerat element. Tvärtom, i sammansättning påverkar borttagning av ett enstaka element ett annat associerat element.
- Aggregation betecknas med en fylld diamant, medan en tom diamant betecknar sammansättning.

Vad är aggregation?
Aggregation är ett specialfall av association när ett objekt "har-ett" ett annat objekt, som du kan ha en aggregering mellan dem. Riktningen mellan dem hjälper dig att ange vilket objekt som innehåller det andra objektet. Aggregation är också känd som en "Har-a"-relation. Det är en undertyp av en associationsrelation i UML.
Vad är komposition?
Kompositionen är ett specialfall av aggregation som hjälper dig att specificera en hel dels relation mellan kompositionsklassen och en underordnad (del)klass.
Skillnad mellan aggregation och komposition i UML
Här är huvudskillnaden mellan aggregation och sammansättning:
aggregation | Sammansättning |
---|---|
Aggregation är en typ av association mellan två objekt som också beskriver "ha ett" förhållande. | Komposition är en specifik typ av aggregation som innebär ägande. |
Aggregation indikeras med en rak linje med en tom pilspets i ena änden. | Sammansättningen indikeras med en rak linje med en fylld pilspets vid någon av ändarna. |
Aggregation är en del av en föreningsrelation. | Sammansättningen är en del av en associationsrelation. |
Aggregation betraktas som en svag typ av association. | Sammansättningen anses vara en stark typ av association. |
I ett aggregeringsförhållande kan objekt som är associerade med varandra förbli inom ramen för ett system utan varandra. | I ett kompositionsförhållande kan objekt som är associerade med varandra inte förbli i omfånget utan varandra. |
I aggregering är länkade objekt inte beroende av det andra objektet. | I komposition är föremål mycket beroende av varandra. |
I aggregering påverkar inte borttagning av ett enskilt element ett annat associerat element. | I komposition påverkar borttagning av ett enstaka element ett annat associerat element. |
Exempel: En bil behöver ett hjul, men den kräver inte alltid samma hjul. En bil kan fungera bra med ett annat hjul också. | Exempel: En fil placeras i mappen. Om man tar bort mappen raderas också filen som är associerad med den givna mappen. |
I Aggregation, förälder förhållande till den underordnade enheten. |
I sammansättning äger moderenheten den underordnade enheten. |
Det betecknas med en fylld diamant | Det betecknas med en tom diamant |
Barn har inte en livstid. | Barn kan ha en livstid. |
Den representeras av en ihålig diamant bredvid monteringsklassen. | Den representeras av en solid diamant bredvid monteringsklassen. |
Raderingen av montering påverkar aldrig dess delar. | Vid ägande av en klass raderas objektet. Det påverkar också det innehållande klassobjektet. |
Aggregation vs sammansättning: Nyckelstatistik
aggregation | Sammansättning | |
---|---|---|
Ägare | Ingen ägare | Ensam ägare |
Livslängd | Ha sin livstid. | Ägarens livstid. |
Barnobjekt | Barnobjekt är alla oberoende. | Underordnade föremål tillhör en ensamstående förälder. |
Exempel på komposition
Mappen kan innehålla många filer, medan varje fil har exakt en mappförälder. Om en mapp raderas tas alla ingående filer bort också. I en sammansatt aggregering kan ett objekt vara en del av endast en sammansättning åt gången.
Exempel på aggregering
Till exempel består din bil av hjul, motor, växellåda, styrning och huvudkroppen etc. Det är en sammansättning och de andra delarna är dess beståndsdelar.
Här är bil till hjulet en Aggregation, bil till motorn är en annan aggregering, bil till växellåda en annan, och så vidare.
Denna typ av parning hjälper dig att definiera mångfalden av beståndsdelen i sammansättningen som dess resultat. Antalet föremål kan också avbildas.
En bil behöver ett hjul för att fungera korrekt. Vi kan dock inte säga detsamma med en bil. Samma logik kan tillämpas på cykel, cykel eller vilket annat fordon som helst men inte en viss bil.
Här är hjulobjektet meningsfullt även utan bilobjektet. Det är känt som ett aggregeringsförhållande.