Razlika između agregacije i sastava

Ključna razlika - Agregacija vs sastav
 

Objektno orijentirano programiranje (OOP) uobičajena je paradigma u razvoju softvera. Objekt je instanca klase. Nije moguće stvoriti objekte odjednom. Za kreiranje objekta trebao bi biti nacrt ili opis. Taj je nacrt poznat kao klasa. Klasa sadrži svojstva i metode. Objekti se stvaraju pomoću klasa. Klasa i objekt slični su planu i kući u stvarnom svijetu. Nije moguće izgraditi kuću bez odgovarajućeg plana. Isto tako, klasa se koristi za stvaranje predmeta. Objekt surađuje s drugim objektima. Veza sa predstavlja odnos dva ili više objekata naziva se "udruženje". Agregacija i sastav su vrste asocijacija. Oni opisuju odnos između klasa. Ovaj članak govori o razlici između združivanja i sastava. ključna razlika između združivanja i sastava je to združivanje je asocijacija između dva objekta koja opisuje odnos "ima", a sastav je specifičniji tip agregacije koji podrazumijeva vlasništvo.

SADRŽAJ

1. Pregled i ključne razlike
2. Što je agregacija
3. Što je sastav
4. Sličnosti između agregacije i sastava
5. Usporedna usporedba - Agregacija vs sastav u tabelarnom obliku
6. Sažetak

Što je agregacija?

Odnos između dva objekta prikazan je crtanjem crte na UML-u. Poveznica je udruga. UML pomaže dobiti vizualni prikaz sustava. Razlikuje se od uobičajenih programskih jezika. Asocijacija također definira mnoštvo objekata. Oni su jedan na jedan, jedan na mnogo i mnogo-na-mnogo. Kada je jedan objekt klase A povezan s jednim objektom klase B, to je odnos jedan na jedan. Primjer je autor koji piše knjigu. U tom primjeru jedan autor piše knjigu.

Kada je jedan objekt klase A povezan s mnogim objektima klase B, to je odnos jedan prema mnogima. Primjer je da odjel može imati mnogo zaposlenih. Kada je objekt klase A povezan s mnogim objektima klase B, a objekt klase B povezan s mnogim objektima klase A, to je udruživanje mnogih prema mnogima. Jedan primjer je da zaposlenik može raditi na više projekata, a projekt može imati više zaposlenih.

Agregacija je asocijacija tipa koja dalje opisuje odnos između objekata. Agregacija opisuje odnos "ima". Neki primjeri koji opisuju odnos su: učenik "ima" student ID, vozilo "ima" motor. Također je moguće proširiti veliku količinu odnosa. Neki su primjeri: banka "ima mnogo" bankovnih računa, klasa "ima mnogo" učenika. To se može objasniti pomoću donjeg primjera.

Slika 01: Agregacija

Prema gornjem primjeru, učionica se sastoji od učenika ili mnogih učenika. Mnoštvo se koristi i za označavanje broja objekata. Opisuje da jedna učionica ima više učenika. Simbol dijamanta predstavlja združivanje u UML-u. Objekti učenika se ne oslanjaju na predmet klase. Ako je predmet klase uništen, to neće utjecati na učeničke objekte. Ti će objekti i dalje postojati.

Što je sastav?

Sastav je specifičniji oblik agregacije. Opisuje vlasništvo. To se može objasniti pomoću donjeg primjera.

Slika 02: Sastav

Prema gore navedenom, objekt knjige sastoji se od objekta ili stranica. Mnoštvo se koristi i za označavanje broja objekata. Opisuje da jedna učionica ima više učenika. Simbol dijamanta koji je istaknut predstavlja kompoziciju u UML-u. Kako knjiga ima stranicu ili više stranica, to je sažetak, ali je detaljnije specificiran. Ako je objekt knjige uništen, tada se i objekti stranice uništavaju. Objekti stranice ne mogu postojati bez objekta knjige. Stoga je sastav specifičniji oblik agregacije koji podrazumijeva vlasništvo.

Koje su sličnosti između združivanja i sastava?

  • Oboje se koriste u objektno orijentiranom programiranju.
  • Oba se koriste u jeziku objedinjenog modeliranja (UML) za vizualno razumijevanje sustava.

Koja je razlika između agregacije i sastava?

Agregacija vs sastav

Agregacija je povezanost dva objekta koja opisuje odnos "ima". Sastav je najspecifičnija vrsta agregacije koja podrazumijeva vlasništvo.
 UML simbol
Agregacija je označena dijamantom. Sastav je označen istaknutim dijamantom.
funkcionalnost
Sakupljeno, ako je objekt posjedovanja uništen, to neće utjecati na objekt koji sadrži. U sastavu, ako je objekt posjedovanja uništen, utjecati će na objekt koji sadrži.

Sažetak - Agregacija vs sastav 

Objektno orijentirano programiranje glavna je paradigma u razvoju softvera. U OOP-u se sustav modelira pomoću objekata. Ti objekti ne postoje izolirano. Objekti surađuju s drugim objektima. Odnos među objektima poznat je kao udruživanje. Skupljanje i sastav su vrste udruživanja. Razlika između združivanja i sastava je u tome što je združivanje asocijacija između dva objekta koja opisuje odnos “ima”, a sastav je specifičniji tip združivanja koji podrazumijeva vlasništvo. Skupljanje i sastav pomažu razumjeti ponašanje sustava.

Preuzmite PDF verziju Agregacije vs sastav

Možete preuzeti PDF verziju ovog članka i koristiti je za izvanmrežne svrhe, prema napomeni. Molimo preuzmite PDF verziju ovdje Razlika između agregacije i sastava

Referenca:

1. Korištenje agregacije i sastava, Narodna karijera, 22. svibnja 2015. Dostupno ovdje