logo

UML asszociáció vs. Aggregáció vs. Összetétel

Az UML diagramokban a kapcsolatok több dolog összekapcsolására szolgálnak. Ez egy kapcsolat strukturális, viselkedési vagy csoportosító dolgok között. Az alábbiakban felsoroljuk az alább felsorolt ​​szabványos UML kapcsolatokat:

  • Egyesület
  • Függőség
  • Általánosítás
  • Megvalósítás

Egyesület

Az asszociációs kapcsolat olyan strukturális kapcsolat, amelyben a rendszeren belül különböző objektumok kapcsolódnak egymáshoz. Bináris kapcsolatot mutat a tevékenységet reprezentáló objektumok között. Az objektumok közötti kapcsolatot ábrázolja, például egy tanárt, aki több tanárhoz is társítható.

Ezt az osztályok közötti vonal képviseli, amelyet egy nyíl követ, amely az irányba navigál, és ha a nyíl mindkét oldalon van, akkor ezt kétirányú asszociációnak nevezik. Megadhatjuk egy asszociáció többszörösét, ha hozzáadjuk az asszociációt jelölő sorban a díszeket.

Példa:

1) Egy tanárnak több diákja van.

UML asszociáció vs. Aggregáció vs. Összetétel

2) Egyetlen diák több tanárral is kapcsolatba léphet.

UML asszociáció vs. Aggregáció vs. Összetétel

Az összetétel és az aggregáció az asszociáció két részhalmaza. Mindkét esetben az egyik osztály objektuma egy másik osztály objektumának tulajdonában van; az egyetlen különbség az, hogy összetételében a gyermek nem létezik a szülőjétől függetlenül, míg összesítve a gyermek nem függ a szülőjétől, azaz önálló. Az összesítés az asszociáció speciális formája, az összetétel pedig az összevonás speciális formája.

UML asszociáció vs. Aggregáció vs. Összetétel

Összevonás

Az aggregáció az asszociáció egy részhalmaza, különböző dolgok gyűjteménye. Azt jelzi, hogy van kapcsolat. Konkrétabb, mint egy asszociáció. Egy rész-egész vagy részkapcsolatot ír le. Ez egy bináris asszociáció, azaz csak két osztályt foglal magában. Ez egyfajta kapcsolat, amelyben a gyermek független a szülőjétől.

Például:

Itt egy autóra és egy kerékre gondolunk. Egy autó nem tud mozogni kerék nélkül. De a kerék önállóan használható kerékpárral, robogóval, kerékpárral vagy bármilyen más járművel. A kerék objektum létezhet az autó objektum nélkül is, ami aggregációs kapcsolatnak bizonyul.

UML asszociáció vs. Aggregáció vs. Összetétel

Fogalmazás

A kompozíció az aggregáció része, és az egész-rész viszonyt ábrázolja. Egy kompozit (szülő) és részei (gyermekei) közötti függőséget ábrázol, ami azt jelenti, hogy ha a kompozitot eldobják, akkor annak részei is törlődnek. Hasonló objektumok között létezik.

Amint az alábbi példából látható, a kompozíciós asszociációs kapcsolat összekapcsolja a Személy osztályt az Agy, a Szív és a Lábak osztállyal. Ha az ember megsemmisül, az agy, a szív és a lábak is eldobódnak.

UML asszociáció vs. Aggregáció vs. Összetétel

Társulás vs. Aggregáció vs. Összetétel

Egyesület Összevonás Fogalmazás
Az asszociációs kapcsolatot nyíllal ábrázoljuk. Az aggregációs kapcsolatot egy egyenes vonal képviseli, amelynek egyik végén üres gyémánt van. A kompozíciós összefüggést egy egyenes vonal képviseli, melynek egyik végén fekete gyémánt található.
Az UML-ben két vagy több osztály között létezhet. Az egyesületi kapcsolat része. Az aggregációs kapcsolat része.
Ez magában foglalja az egy az egyhez, egy a többhez, a sok az egyhez és a sok a sokhoz asszociációt az osztályok között. Egyfajta gyenge kapcsolatot mutat. Erős kapcsolattípust mutat.
Még egy objektumot társíthat egymáshoz. Aggregációs kapcsolatban a társított objektumok egymástól függetlenül léteznek a rendszer hatókörén belül. Összetételi kapcsolatban a társított objektumok nem létezhetnek önállóan a rendszer hatókörén belül.
Ebben az objektumok összekapcsolódnak. Ebben a kapcsolt objektumok függetlenek egymástól. Itt a kapcsolt objektumok függenek egymástól.
Ha az egyik elemet töröljük, hatással lehet a másik társított elemre, vagy nem. Az összesítési kapcsolat egy elemének törlése nincs hatással a többi társított elemre. A másik elemet érinti, ha az egyik társított elemet töröljük.
Példa: Egy oktató több diákkal, vagy egy diák több tanárral is társulhat. Példa: Egy autónak szüksége van egy kerékre a megfelelő működéshez, de előfordulhat, hogy nem ugyanaz a kerék. Működhet más kerékkel is. Példa: Ha egy fájlt egy mappába helyeznek, és ez a mappa törlődik. A mappában található fájl is törlődik a mappa törlésekor.