Vad är komposition?
Kompositionen är ett speciellt fall av aggregering som hjälper dig att specificera en hel del-relation mellan kompositionsklassen och en underordnad (del) klass.
Vad är aggregering?
Aggregation är ett speciellt fall av associering 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. Aggregering är också känt som ett "Has-a" -förhållande. Det är en undertyp av ett associeringsförhållande i UML.
VÄSENTLIGA SKILLNADER
- Aggregering är en typ av förening mellan två objekt som beskriver "har en" relation medan komposition är en specifik typ av aggregering som innebär ägande.
- Aggregering 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 associerade 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 sammansättning är mycket beroende av varandra.
- I Aggregation påverkar inte borttagning av ett enda element ett annat associerat element. Tvärtom, i komposition påverkar ett annat associerat element att radera ett enda element.
- Aggregering betecknas med en fylld diamant medan komposition betecknas med en tom diamant.
Nyckelstatistik
Aggregering | Sammansättning | |
Ägare | Ingen ägare | Ensam ägare |
Livstid | Ha sin livstid. | Ägarens livstid. |
Barnobjekt | Barnobjekt är alla oberoende. | Barnobjekt tillhör en ensamstående förälder. |
Exempel på komposition
Mappen kan innehålla många filer, medan varje fil har exakt en överordnad mapp. Om en mapp tas bort tas också alla filer bort. I en sammansatt aggregering kan ett objekt vara en del av endast en komposit åt gången.
Exempel Aggregering
Till exempel består din bil av hjul, motor, växellåda, styrning och huvuddelen etc. Den är en enhet och de andra delarna är dess beståndsdelar.
Här är bil till hjul en aggregering, bil till motor är en annan sammanslagning, bil till växellåda en annan, och så vidare.
Denna typ av parning hjälper dig att definiera mångfalden av den ingående delen i enheten som dess resultat. Antalet objekt kan också avbildas.
En bil behöver ett hjul för att fungera korrekt. Vi kan dock inte säga samma sak med en bil. Samma logik kan tillämpas på cykel, cykel eller något annat fordon men inte en viss bil.
Här är hjulobjektet meningsfullt även utan bilobjektet. Det är känt som ett aggregeringsförhållande.
Skillnad mellan aggregering och komposition
Här är den största skillnaden mellan aggregering och komposition:
Aggregering | Sammansättning |
Aggregering är en typ av förening mellan två objekt som också beskriver "har en" relation. | Sammansättning är en specifik typ av aggregering som innebär ägande. |
Aggregering indikeras med en rak linje med en tom pilspets i ena änden. | Kompositionen indikeras med en rak linje med en fylld pilspets vid någon av ändarna. |
Aggregering är en del av en associeringsrelation. | Kompositionen är en del av ett associeringsförhållande. |
Aggregering betraktas som en svag typ av förening. | Kompositionen betraktas som en stark typ av förening. |
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 Aggregation är länkade objekt inte beroende av det andra objektet. | I komposition är föremål mycket beroende av varandra. |
I Aggregation påverkar inte borttagning av ett enda element ett annat associerat element. | I komposition påverkar ett annat associerat element att radera ett enda element. |
Exempel: En bil behöver ett hjul, men det kräver inte alltid samma hjul. En bil kan fungera tillfredsställande med ett annat hjul också. | Exempel: En fil placeras i mappen. Om man tar bort mappen raderas också den fil som är associerad med den aktuella mappen. |
I Aggregation, föräldrarelation med den underordnade enheten. | I sammansättning äger moderföretaget den underordnade enheten. |
Den betecknas med en fylld diamant | Den betecknas med en tom diamant |
Barn har inte en livstid. | Barn kan få en livstid. |
Det representeras av en ihålig diamant bredvid monteringsklassen. | Det representeras av en solid diamant bredvid monteringsklassen. |
Radering av montering påverkar aldrig dess delar. | Om du äger en klass tas objektet bort. Det påverkar också det innehållande klassobjektet. |