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.
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
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ť.
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.
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. |
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.
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
1. Pomocou agregácie a zloženia, Kariéra ľudí, 22. mája 2015. K dispozícii tu