Forskjellen mellom aggregasjon og komposisjon i UML
Nøkkelforskjell mellom aggregasjon og komposisjon
- Aggregering er en type assosiasjon mellom to objekter som beskriver "ha et" forhold, mens sammensetning er en spesifikk type aggregering som innebærer eierskap.
- Aggregering er indikert ved hjelp av en rett linje med en tom pilspiss i den ene enden. På den annen side er sammensetningen indikert ved hjelp av en rett linje med en fylt pilspiss i en av endene.
- I et aggregeringsforhold kan objekter som er assosiert med hverandre forbli i omfanget av et system uten hverandre. Men i et komposisjonsforhold kan ikke objekter som er assosiert med hverandre forbli i omfanget uten hverandre.
- I aggregering er koblede objekter ikke avhengige av det andre objektet, mens i komposisjon er objekter svært avhengige av hverandre.
- I aggregering vil sletting av et enkelt element ikke påvirke et annet tilknyttet element. Tvert imot, i komposisjon påvirker sletting av et enkelt element et annet assosiert element.
- Aggregering betegnes med en fylt diamant, mens en tom diamant betegner sammensetning.
Hva er aggregering?
Aggregering er et spesielt tilfelle av assosiasjon når et objekt 'har-et' et annet objekt, som du kan ha en aggregering mellom dem. Retningen mellom dem hjelper deg å spesifisere hvilket objekt som inneholder det andre objektet. Aggregasjon er også kjent som et "Has-a"-forhold. Det er en undertype av et assosiasjonsforhold i UML.
Hva er komposisjon?
Komposisjonen er et spesialtilfelle av aggregering som hjelper deg å spesifisere et hel-dels forhold mellom komposisjonsklassen og en underordnet (del)klasse.
Forskjellen mellom aggregasjon og komposisjon i UML
Her er hovedforskjellen mellom aggregasjon og sammensetning:
aggregering | sammensetning |
---|---|
Aggregering er en type assosiasjon mellom to objekter som også beskriver "ha et" forhold. | Sammensetning er en spesifikk type aggregering som innebærer eierskap. |
Aggregering er indikert ved hjelp av en rett linje med en tom pilspiss i den ene enden. | Sammensetningen er indikert ved hjelp av en rett linje med en fylt pilspiss i en av endene. |
Aggregasjon er en del av et assosiasjonsforhold. | Sammensetningen er en del av et assosiasjonsforhold. |
Aggregasjon anses som en svak type assosiasjon. | Sammensetningen anses som en sterk type assosiasjon. |
I et aggregeringsforhold kan objekter som er assosiert med hverandre forbli i omfanget av et system uten hverandre. | I et komposisjonsforhold kan ikke objekter som er knyttet til hverandre forbli i omfanget uten hverandre. |
I aggregering er koblede objekter ikke avhengige av det andre objektet. | I komposisjon er objekter svært avhengige av hverandre. |
I aggregering påvirker ikke sletting av et enkelt element et annet tilknyttet element. | I komposisjon påvirker sletting av et enkelt element et annet tilknyttet element. |
Eksempel: En bil trenger et hjul, men den krever ikke alltid det samme hjulet. En bil kan fungere tilstrekkelig med et annet hjul også. | Eksempel: En fil er plassert inne i mappen. Hvis man sletter mappen, slettes også filen knyttet til den gitte mappen. |
I Aggregasjon, forelder forholdet til barnets enhet. |
I sammensetning eier den overordnede enheten den underordnede enheten. |
Det er betegnet med en fylt diamant | Det er merket med en tom diamant |
Barn har ikke en levetid. | Barn kan ha et helt liv. |
Den er representert med en hul diamant ved siden av monteringsklassen. | Den er representert med en solid diamant ved siden av monteringsklassen. |
Sletting av montering påvirker aldri delene. | Ved å eie en klasse slettes objektet. Det påvirker også det inneholdende klasseobjektet. |
Aggregasjon vs sammensetning: Nøkkelstatistikk
aggregering | sammensetning | |
---|---|---|
Eieren | Ingen eier | Enslig eier |
Lifetime | Har livet sitt. | Eiers levetid. |
Barneobjekt | Barneobjekter er alle uavhengige. | Underordnede objekter tilhører en enslig forelder. |
Eksempel på komposisjon
Mappen kan inneholde mange filer, mens hver fil har nøyaktig én mappeforelder. Hvis en mappe slettes, fjernes også alle filene. I en sammensatt aggregering kan et objekt være en del av bare én kompositt om gangen.
Eksempel på aggregering
For eksempel består bilen din av hjul, motor, girkasse, styring og hovedkroppen osv. Det er en sammenstilling, og de andre delene er dens bestanddeler.
Her er bil til hjul en aggregering, bil til motor er en annen aggregering, bil til girkasse en annen, og så videre.
Denne typen paring hjelper deg med å definere mangfoldet av den konstituerende delen i sammenstillingen som resultatet. Antall gjenstander kan også avbildes.
En bil trenger et hjul for å fungere korrekt. Vi kan imidlertid ikke si det samme med en bil. Den samme logikken kan brukes på sykkel, sykkel eller et hvilket som helst annet kjøretøy, men ikke en bestemt bil.
Her er hjulobjektet meningsfylt også uten bilobjektet. Det er kjent som et aggregeringsforhold.