UML Association vs. Összesítés vs. Összetétel [EXAMPLE]
Az UML diagramokban a kapcsolatok különböző dolgok közötti kapcsolatok ábrázolására szolgálnak. A kapcsolat olyan dolgok közötti kapcsolat, mint a strukturális, viselkedési vagy csoportos tényezők.ping dolgok az egységes modellezési nyelven.
Az alábbiakban bemutatjuk az UML szabványos kapcsolatainak különböző típusait,
- Egyesület
- Függőség
- Általánosítás
- Megvalósítás
Ezeken kívül az UML lehetővé teszi az összesítés és az összetételi kapcsolat használatát.
UML Egyesület
Ez egy strukturális kapcsolat, amely azt jelenti, hogy az objektumok összekapcsolhatók vagy társíthatók egy másik objektumhoz a rendszeren belül. A következő megszorítások alkalmazhatók az UML-asszociációs kapcsolatra.
- {beleértett} – Az implicit megszorítások azt adják meg, hogy a kapcsolat nem nyilvánvaló; koncepción alapul.
- {megrendelt} – A rendezett megszorítások azt határozzák meg, hogy a társítás egyik végén lévő objektumok meghatározott módon vannak.
- {változékony} – A módosítható megszorítás azt határozza meg, hogy a rendszer különböző objektumai közötti kapcsolat a követelményeknek megfelelően hozzáadható, eltávolítható és módosítható.
- {addOnly} – Meghatározza, hogy az új kapcsolatok olyan objektumból adhatók hozzá, amely a társítás másik végén található.
- {fagyott} – Meghatározza, hogy ha egy hivatkozást két objektum közé illesztünk be, akkor az nem módosítható, amíg a befagyasztott kényszer aktív az adott hivatkozáson vagy kapcsolaton.
Létrehozhatunk olyan osztályt is, amely UML Association tulajdonságokkal rendelkezik; asszociációs osztálynak nevezik.
Reflexív asszociáció
A reflexív asszociáció az asszociációs kapcsolat egy altípusa UML. Reflexív asszociációban egy osztály példányai rokoníthatók egymással. Egy osztály példányát objektumnak is nevezik.
A reflexív asszociáció azt állítja, hogy egy hivatkozás vagy kapcsolat lehet ugyanannak az osztálynak az objektumain belül.
Példa:
Nézzünk egy példát egy osztálygyümölcsre.
A gyümölcsosztálynak két példánya van, például a mangó és az alma. A reflexív asszociáció azt állítja, hogy a mangó és az alma között kapcsolat lehet, mivel ugyanazon osztály példányai, például gyümölcsök.

Irányított Egyesület
Ahogy a neve is sugallja, az irányított asszociáció az asszociációs osztályokon belüli áramlás irányához kapcsolódik.
Irányított társulásban az áramlás irányított. Az egyik osztályról a másikra való társítás csak egyetlen irányban folyik.
Nyílhegyes folytonos vonallal jelöljük.
UML asszociációs példa:
Azt mondhatjuk, hogy egy kiszolgáló és egy kliens között irányított asszociációs kapcsolat van.
A szerver képes feldolgozni a kliens kéréseit. Ez az áramlás egyirányú, csak a kiszolgálótól a kliensig folyik. Ezért egy irányított asszociációs kapcsolat jelen lehet a rendszer szerverein és kliensein belül.
UML összetétele
Ez nem szabvány UML kapcsolat, de még mindig használják különféle alkalmazásokban.
Az összetett aggregáció az aggregációs reláció egy altípusa, amelynek jellemzői a következők:
- Ez egy kétirányú asszociáció az objektumok között.
- Ez egy egész/rész kapcsolat.
- Ha egy kompozitot törölnek, a hozzá tartozó összes többi rész törlődik.
Az összetett aggregációt bináris asszociációként írják le, amelyet kitöltött fekete gyémánt díszít az aggregátum (egész) végén.
A mappa sok fájlt tartalmazhat, míg minden fájlnak pontosan egy szülőmappa van. Ha töröl egy mappát, akkor az összes benne lévő fájlt is eltávolítja.
Egy összetett aggregációban egy objektum egyszerre csak egy kompozit része lehet.
Példa UML kompozícióra:
Például egy ablakrendszerben egy keret pontosan egy ablakhoz tartozik. Egy összetett aggregációban az egész rendszer felelős a részei elhelyezéséért, ami azt jelenti, hogy a kompozitnak kezelnie kell a részei létrehozását és megsemmisítését.
UML aggregáció
Az aggregáció egy asszociációs kapcsolat altípusa az UML-ben. Aggregáció és összetétel mindkettő az asszociációs kapcsolat típusa az UML-ben. Az aggregációs kapcsolat egyszerű szavakkal leírható: „egy osztály objektuma birtokolhatja vagy hozzáférhet egy másik osztály objektumaihoz”.
Aggregációs kapcsolatban a függő objektum akkor is a kapcsolat hatókörében marad, ha a forrásobjektum megsemmisül.
Példa UML aggregációra:
Nézzünk egy példát egy autóra és egy kerékre.
Az autónak kerékre van szüksége a megfelelő működéshez, de a kerékhez nem mindig van szüksége autóra. Használható kerékpárral, kerékpárral vagy bármilyen más járművel, de nem egy adott autóval. Itt a kerék objektum az autótárgy nélkül is értelmes. Az ilyen típusú kapcsolatokat UML aggregációs relációnak nevezzük.
Egyesület vs. Összesítés vs. Fogalmazás
| Egyesület | összesítése | Összetétel |
|---|---|---|
| Az asszociációs kapcsolatot nyíllal jelöljük. | Az aggregációs kapcsolatot egy egyenes vonallal jelöljük, amelynek egyik végén üres nyílhegy. | Az összetétel összefüggést egy egyenes vonallal jelöljük, amelynek bármelyik végén egy kitöltött nyílhegy. |
| Társulás létezhet két vagy több osztály között az UML-ben. | Az összesítés az asszociációs kapcsolat része. | A kompozíció egy asszociációs kapcsolat része. |
| Az egyesületi osztályok között jelen lehet egy-egy, egy-sok, sok-egy és sok-sok asszociáció. | Az aggregációt az asszociáció gyenge típusának tekintik. | A kompozíció erős asszociációs típusnak tekinthető. |
| Egy asszociációs kapcsolatban egy vagy több objektum társítható egymáshoz. | Aggregációs kapcsolatban az egymással társított objektumok egymás nélkül is egy rendszer hatókörében maradhatnak. | Kompozíciós kapcsolatban az egymással társított objektumok nem maradhatnak a hatókörben egymás nélkül. |
| Az objektumok egymáshoz kapcsolódnak. | A kapcsolt objektumok nem függenek a másik objektumtól. | Az objektumok nagymértékben függenek egymástól. |
| Az UML-asszociációban egy elem törlése hatással lehet egy másik társított elemre, vagy nem. | Az UML aggregációban az egyik elem törlése nincs hatással a másik társított elemre. | Az UML összeállításban az egyik elem törlése hatással van egy másik társított elemre. |
| Példa: Egy tanár több diákhoz kapcsolódik. Or tanár ad utasításokat a tanulóknak. |
Példa: Egy autóhoz kell egy kerék, de nem mindig ugyanaz a kerék. Egy autó egy másik kerékkel is tud megfelelően működni. |
Példa: Egy fájl kerül a mappába. Ha törli a mappát, akkor az adott mappához tartozó fájl is törlődik. |
Összegzésként
- A kapcsolat a dolgok közötti kapcsolat.
- Az asszociáció, a függőség, az általánosítás és a megvalósítás sokféle UML által biztosított kapcsolatok.
- A szabványos kapcsolatokon kívül az UML-en belül az összetétel és az aggregáció is használatos.
- Az aggregáció és az összetétel egyaránt az asszociációs kapcsolat típusa az UML-ben.
- Az UML összetétel egy kétirányú kapcsolat, amelyet bináris kapcsolatnak is neveznek.
Tekintse meg cikkünket a legjobb UML-eszközökről: - Kattints ide

