Rozdiel medzi agregáciou a zložením

Kľúčový rozdiel - agregácia verzus zloženie
 

Objektovo orientované programovanie (OOP) je spoločným vzorom pri vývoji softvéru. Objekt je inštanciou triedy. Nie je možné vytvárať objekty naraz. Na vytvorenie objektu by mal existovať plán alebo popis. Tento plán sa nazýva trieda. Trieda obsahuje vlastnosti a metódy. Objekty sa vytvárajú pomocou tried. Trieda a objekt sú podobné plánu a domu v skutočnom svete. Dom nie je možné postaviť bez riadneho plánu. Podobne sa trieda používa na vytvorenie objektu. Objekt spolupracuje s inými objektmi. Spojenie s predstavuje vzťah dvoch alebo viacerých objektov sa nazýva „asociácia“. Agregácia a zloženie sú typy združení. Opisujú vzťah medzi triedami. Tento článok sa zaoberá rozdielom medzi agregáciou a zložením. kľúčový rozdiel medzi agregáciou a zložením je to agregácia je asociácia medzi dvoma objektmi, ktorá popisuje vzťah „má“ a zloženie je špecifickejší typ agregácie, ktorý predpokladá vlastníctvo.

OBSAH

1. Prehľad a kľúčový rozdiel
2. Čo je agregácia
3. Čo je zloženie
4. Podobnosti medzi agregáciou a zložením
5. Porovnanie bok po boku - agregácia verzus zloženie v tabuľkovej forme
6. Zhrnutie

Čo je agregácia?

Vzťah medzi dvoma objektmi je znázornený nakreslením čiary v Unified Modeling Language (UML). Odkaz je združením. UML pomáha získať vizuálnu reprezentáciu systému. Je to iné ako bežné programovacie jazyky. Priradenie tiež definuje množstvo objektov. Sú to jeden ku druhému, jeden k mnohým a mnoho k mnohým. Ak je jediný objekt triedy A spojený s jediným objektom triedy B, jedná sa o vzťah medzi dvoma osobami. Príkladom je autor, ktorý píše knihu. V tomto príklade jeden autor píše knihu.

Ak je jeden objekt triedy A spojený s mnohými objektmi triedy B, jedná sa o vzťah jeden k mnohým. Príkladom je, že oddelenie môže mať veľa zamestnancov. Ak je objekt triedy A spojený s mnohými objektmi triedy B a objekt triedy B je spojený s mnohými objektmi triedy A, jedná sa o združenie medzi mnohými. Jedným príkladom je, že zamestnanec môže pracovať na viacerých projektoch a projekt môže mať viac zamestnancov.

Agregácia je priradenie typu, ktoré ďalej popisuje vzťah medzi objektmi. Agregácia popisuje vzťah „má“. Niektoré príklady, ktoré opisujú tento vzťah, sú „študent má“ študentské ID, vozidlo „má“ motor. Je tiež možné rozšíriť vzťahom veľké množstvo. Niektoré príklady sú: banka má „veľa“ bankových účtov, trieda „má veľa“ študentov. Vysvetľuje sa pomocou nižšie uvedeného príkladu.

Obrázok 01: Agregácia

Podľa vyššie uvedeného príkladu pozostáva trieda zo študenta alebo z mnohých študentov. Násobnosť sa tiež používa na označenie počtu objektov. Opisuje, že jedna učebňa má viac študentov. Symbol diamantu predstavuje agregáciu v UML. Študentské objekty sa nespoliehajú na objekt triedy. Ak je predmet triedy zničený, nebude to mať vplyv na objekty študentov. Tieto objekty budú stále existovať.

Čo je zloženie?

Kompozícia je špecifickejšou formou agregácie. Opisuje vlastníctvo. Dá sa to vysvetliť pomocou nižšie uvedeného príkladu.

Obrázok 02: Zloženie

Podľa vyššie uvedeného pozostáva knižný objekt zo stránok alebo stránok. Násobnosť sa tiež používa na označenie počtu objektov. Opisuje, že jedna učebňa má viac študentov. Symbol diamantu, ktorý je zvýraznený, predstavuje zloženie v UML. Keďže kniha obsahuje stránku alebo veľa stránok, jedná sa o agregáciu, ale je to konkrétnejšie. Ak je objekt knihy zničený, zničia sa aj objekty stránky. Objekty stránky nemôžu existovať bez objektu knihy. Zloženie je preto špecifickejšou formou agregácie, ktorá predpokladá vlastníctvo.

Aké sú podobnosti medzi agregáciou a zložením?

  • Obidva sa používajú v objektovo orientovanom programovaní.
  • Obidva sa používajú v Unified Modeling Language (UML) na získanie vizuálneho porozumenia systému.

Aký je rozdiel medzi agregáciou a zložením?

Agregácia verzus zloženie

Agregácia je asociácia medzi dvoma objektmi, ktorá popisuje vzťah „má“. Zloženie je najšpecifickejším typom agregácie, ktorá predpokladá vlastníctvo.
 Symbol UML
Agregácia je označená diamantom. Zloženie je označené zvýrazneným diamantom.
funkčnosť
V agregácii, ak je vlastniaci objekt zničený, nebude mať vplyv na obsahujúci objekt. Ak je vlastník zničený, bude mať v zložení vplyv na obsahujúci objekt.

zhrnutie - Agregácia verzus zloženie 

Objektovo orientované programovanie je hlavným vzorom vo vývoji softvéru. V OOP je systém modelovaný pomocou objektov. Tieto objekty neexistujú izolovane. Objekty spolupracujú s inými objektmi. Vzťah medzi objektmi sa nazýva asociácia. Agregácia a zloženie sú typy združení. Rozdiel medzi agregáciou a zložením spočíva v tom, že agregácia je asociácia medzi dvoma objektmi, ktorá popisuje vzťah „má“ a zloženie je špecifickejším typom agregácie, ktorá predpokladá vlastníctvo. Agregácia a zloženie pomáhajú porozumieť správaniu systému.

Stiahnite si verziu agregácie verzií PDF verzii Zloženie

Môžete si stiahnuť verziu tohto článku vo formáte PDF a použiť ju na účely offline podľa citácie. Stiahnite si verziu PDF tu Rozdiel medzi agregáciou a zložením

referencie:

1. Pomocou agregácie a zloženia, Kariéra ľudí, 22. mája 2015. K dispozícii tu