UML-i koondamise ja koostise erinevus
Peamised erinevused koondamise ja koostise vahel
- Koond on ühte tüüpi seos kahe objekti vahel, mis kirjeldavad suhet "omavad", samas kui kompositsioon on spetsiifiline liitmise tüüp, mis eeldab omandiõigust.
- Agregatsiooni tähistatakse sirgjoonega, mille ühes otsas on tühi nooleots. Teisest küljest näidatakse kompositsiooni sirgjoonega, mille ühes otsas on täidetud nooleots.
- Agregatsioonisuhtes võivad üksteisega seotud objektid jääda süsteemi ulatusse ilma üksteiseta. Kuid kompositsioonisuhtes ei saa üksteisega seotud objektid üksteiseta ulatusse jääda.
- Agregatsioonis ei sõltu lingitud objektid teisest objektist, samas kui kompositsioonis on objektid üksteisest väga sõltuvad.
- Agregatsioonis ei mõjuta ühe elemendi kustutamine teist seotud elementi. Vastupidi, kompositsioonis mõjutab ühe elemendi kustutamine teist seotud elementi.
- Agregatsiooni tähistab täidetud teemant, tühi teemant aga koostist.

Mis on liitmine?
Agregeerimine on assotsiatsiooni erijuhtum, kui objektil "on" teine objekt, mille vahel saate liita. Nende vaheline suund aitab teil määrata, milline objekt sisaldab teist objekti. Agregeerimist tuntakse ka kui "has-a" seost. See on assotsiatsioonisuhte alatüüp UML.
Mis on kompositsioon?
Kompositsioon on liitmise erijuhtum, mis aitab teil määrata tervikosa seose kompositsiooniklassi ja alluva (osa)klassi vahel.
UML-i koondamise ja koostise erinevus
Siin on peamine erinevus koondamise ja koostise vahel:
| Liitmine | Aine koostis |
|---|---|
| Agregeerimine on kahe objekti vahelise seose tüüp, mis kirjeldab ka suhet "omada". | Koosseis on teatud tüüpi koondamine, mis eeldab omandiõigust. |
| Agregatsiooni tähistatakse sirgjoonega, mille ühes otsas on tühi nooleots. | Kompositsioon on näidatud sirgjoonega, mille ühes otsas on täidetud noolepea. |
| Agregatsioon on osa assotsiatsioonisuhtest. | Kompositsioon on osa assotsiatsioonisuhtest. |
| Agregatsiooni peetakse nõrgaks seosetüübiks. | Kompositsiooni peetakse tugevaks assotsiatsioonitüübiks. |
| Agregatsioonisuhtes võivad üksteisega seotud objektid jääda süsteemi ulatusse ilma üksteiseta. | Kompositsioonisuhtes ei saa üksteisega seotud objektid üksteiseta ulatusse jääda. |
| Agregatsioonis ei sõltu lingitud objektid teisest objektist. | Kompositsioonis on objektid üksteisest väga sõltuvad. |
| Agregatsioonis ei mõjuta ühe elemendi kustutamine teist seotud elementi. | Kompositsioonis mõjutab ühe elemendi kustutamine teist seotud elementi. |
| Näide: auto vajab ratast, kuid see ei vaja alati sama ratast. Auto saab adekvaatselt toimida ka teise rattaga. | Näide: kausta paigutatakse fail. Kui kaust kustutatakse, kustutatakse ka selle kaustaga seotud fail. |
| Kokkuvõttes, vanem suhe lapsolemiga. |
Kompositsioonis omab alamolemit emaolemile. |
| Seda tähistab täidetud teemant | Seda tähistab tühi teemant |
| Lapsel pole eluiga. | Lapsel võib olla terve elu. |
| Seda kujutab koosteklassi kõrval õõnes teemant. | Seda esindab koosteklassi kõrval tahke teemant. |
| Koostu kustutamine ei mõjuta kunagi selle osi. | Klassi omamise korral objekt kustutatakse. See mõjutab ka sisaldavat klassiobjekti. |
Koond vs koosseis: põhistatistika
| Liitmine | Aine koostis | |
|---|---|---|
| omanik | Pole omanikku | Üksik omanik |
| Eluaegne | Oma eluiga. | Omaniku eluiga. |
| Lapsobjekt | Lapsobjektid on kõik iseseisvad. | Lapsobjektid kuuluvad üksikvanemale. |
Kompositsiooni näide
Kaust võib sisaldada palju faile, samas kui igal failil on täpselt üks kausta ülem. Kui kaust kustutatakse, eemaldatakse ka kõik selles sisalduvad failid. Komposiitliites võib objekt korraga olla osa ainult ühest komposiidist.
Agregatsiooni näide
Näiteks koosneb teie auto ratastest, mootorist, käigukastist, roolist ja põhikerest jne. See on koost ja muud osad on selle koostisosad.
Siin on auto roolini üks liit, auto mootorini teine liit, auto käigukasti vahel teine jne.
Seda tüüpi sidumine aitab teil määratleda koostu sees olevate koostisosade paljususe kui selle tulemuse. Samuti saab kujutada objektide arvu.
Autol on korrektseks tööks vaja ratast. Samas ei saa me sama öelda auto kohta. Sama loogikat saab rakendada jalgratta, jalgratta või mis tahes muu sõiduki, kuid mitte konkreetse auto kohta.
Siin on rattaobjekt tähendusrikas ka ilma autoobjektita. Seda tuntakse agregatsioonisuhtena.


