Agregacija vs sastav u UML-u: Ključne razlike

Sadržaj:

Anonim

Što je sastav?

Sastav je poseban slučaj agregacije koji vam pomaže da odredite cjeloviti odnos između klase kompozicije i podređene (dijelove) klase.

Što je agregacija?

Agregacija je poseban slučaj pridruživanja kada objekt 'ima-a' drugi objekt, koji između njih možete imati agregaciju. Smjer između njih pomaže vam odrediti koji objekt sadrži drugi objekt. Agregacija je poznata i kao odnos "Ima-a". Podtip je odnosa pridruživanja u UML-u.

KLJUČNE RAZLIKE

  • Agregacija je jedna vrsta povezanosti između dva objekta koja opisuju odnos "imaju", dok je Kompozicija posebna vrsta agregacije koja podrazumijeva vlasništvo.
  • Zbrajanje se označava pomoću ravne crte s praznim vrhom strelice na jednom kraju. S druge strane, sastav se označava pomoću ravne crte s ispunjenom vrhom strelice na bilo kojem od krajeva.
  • U odnosu agregacije, objekti koji su međusobno povezani mogu ostati u opsegu sustava jedni bez drugih. Ali u odnosu kompozicije, objekti koji su međusobno povezani ne mogu ostati u opsegu jedni bez drugih.
  • U agregaciji povezani objekti ne ovise o drugom objektu, dok u sastavu objekti jako ovise jedni o drugima.
  • U agregaciji, brisanje jednog elementa ne utječe na drugi pridruženi element. Naprotiv, u sastavu brisanje pojedinog elementa utječe na drugi pridruženi element.
  • Agregacija je označena ispunjenim dijamantom, dok je sastav prazan dijamantom.

Ključne statistike

Zbrajanje Sastav
Vlasnik Nema vlasnika Samostalni vlasnik
Doživotno Neka im bude život. Životni vijek vlasnika.
Dijete Predmet Svi dječji predmeti su neovisni. Podređeni predmeti pripadaju samohranom roditelju.

Primjer sastava

Mapa može sadržavati mnogo datoteka, dok svaka datoteka ima točno jednog roditelja mape. Ako se mapa izbriše, uklanjaju se i sve sadržane datoteke. U složenoj agregaciji, objekt može biti dio samo jednog kompozita odjednom.

Primjer agregacije

Na primjer, vaš automobil sastoji se od kotača, motora, mjenjača, upravljača i glavnog dijela itd. To je sklop, a ostali dijelovi su njegovi sastavni dijelovi.

Ovdje je automobil na kotaču jedan agregat, automobil na motoru je drugi agregat, automobil na mjenjaču drugi, i tako dalje.

Ova vrsta uparivanja pomaže vam da definirate mnoštvo sastavnog dijela unutar sklopa kao njegov ishod. Može se prikazati i broj predmeta.

Za pravilno funkcioniranje automobila potreban je kotač. Međutim, to ne možemo reći s automobilom. Ista logika može se primijeniti na bicikl, bicikl ili bilo koje drugo vozilo, ali ne i na određeni automobil.

Ovdje je predmet kotača smislen i bez predmeta automobila. Poznat je kao odnos agregacije.

Razlika između agregacije i sastava

Evo glavne razlike između agregacije i sastava:

Zbrajanje Sastav
Agregacija je jedna vrsta povezivanja između dva objekta koja također opisuje odnos "imaju". Sastav je posebna vrsta agregacije koja podrazumijeva vlasništvo.
Zbrajanje se označava pomoću ravne crte s praznim vrhom strelice na jednom kraju. Sastav je označen pomoću ravne crte s ispunjenim vrhom strelice na bilo kojem od krajeva.
Agregacija je dio odnosa udruživanja. Sastav je dio odnosa udruživanja.
Agregacija se smatra slabim tipom udruživanja. Sastav se smatra jakom vrstom udruživanja.
U odnosu agregacije, objekti koji su međusobno povezani mogu ostati u opsegu sustava jedni bez drugih. U odnosu kompozicije, objekti koji su međusobno povezani ne mogu ostati u opsegu jedni bez drugih.
U agregaciji povezani objekti ne ovise o drugom objektu. U sastavu su predmeti međusobno vrlo ovisni.
U agregaciji, brisanje jednog elementa ne utječe na drugi pridruženi element. U sastavu, brisanje pojedinog elementa utječe na drugi pridruženi element.
Primjer: Za automobil je potreban kotač, ali ne treba uvijek isti kotač. Automobil može adekvatno funkcionirati i s drugim kotačem. Primjer: Datoteka se nalazi unutar mape. Ako neko izbriše mapu, tada se briše i datoteka povezana s tom mapom.
U agregaciji, roditeljski odnos s podređenim entitetom. Po sastavu, nadređeni entitet posjeduje podređeni entitet.
Označava se ispunjenim dijamantom Označava se praznim dijamantom
Dijete nema život. Dijete može imati cijeli život.
Predstavlja se šupljim dijamantom pored klase montaže. Predstavlja ga puni dijamant pored klase montaže.
Brisanje sklopa nikada ne utječe na njegove dijelove. U slučaju posjedovanja klase, objekt se briše. Također utječe na objekt koji sadrži klasu.