Agregare vs. compoziție

Autor: Laura McKinney
Data Creației: 4 Aprilie 2021
Data Actualizării: 13 Mai 2024
Anonim
Chimie, Clasa a VIII-a, Oxizii. Compoziție, clasificare și denumire
Video: Chimie, Clasa a VIII-a, Oxizii. Compoziție, clasificare și denumire

Conţinut

Diferența cheie între agregare și compoziție este că, în agregare, există o relație părinte copil în care copilul poate exista independent, în timp ce compoziția este o relație părinte copil în care copilul nu poate exista independent fără un părinte.


Asocierea este un concept foarte important în programarea orientată pe obiecte. În programarea orientată pe obiect, datele sunt ascunse de funcțiile non-membre ale unei clase. Doar funcția de membru a unei clase poate utiliza date. Orice funcție non-membră poate modifica datele care se află în clasa de funcții. Obiectele și clasele sunt principalele concepte ale programării orientate pe obiecte. Încapsularea datelor care este cunoscută și sub numele de abstractizare și moștenire se realizează și în programarea orientată pe obiecte. Agregarea și compoziția sunt tipuri de asociere și reprezintă un concept foarte important în programarea orientată pe obiecte. În agregare, există o relație părintească în care un copil poate exista independent, în timp ce compoziția este o relație părintească în care un copil nu poate exista independent fără un părinte. Compoziția are o paradigmă comună în programarea orientată spre obiecte, care este foarte importantă în dezvoltarea de software. Forma restrictivă de asociere este o compoziție în care există o relație părintească în care copilul nu poate exista independent fără un părinte. În UML este reprezentat de un diamant solid minuscul.


În compoziție, partea constitutivă poate fi legată de cea mai mare parte din ansamblu. O clasă devine container și alta clasă devine conținut care se află în acel container. Acestea au parte de moștenire foarte ușoară, iar metoda unei clase poate fi folosită fără a scrie încă din nou întregul cod. În compoziție există o „parte a” relației. Agregarea este o relație cu o clasă de asamblare cu clasa constitutivă. În UML, care este un limbaj de modelare unificat, care arată relația de agregare cu un segment de linie. Agregarea arată relații precum unul la unu, unul la mulți, mulți la mulți. Dacă o singură clasă are mai multe clase, există o relație de la una la multe, în timp ce multe clase au mai multe obiecte sunt relațiile de la o singură la una. „Are“ este o relație descrisă în agregare.

Cuprins: diferență între agregare și compoziție

  • Diagramă de comparație
  • Ce este agregarea?
  • Diferențele cheie
  • Concluzie
  • Video explicativ

Diagramă de comparație

BazăAgregare Compoziţie
SensÎn agregare, există o relație părintească în care copilul poate exista independent

Compoziția este o relație părintească în care un copil nu poate exista independent fără un părinte.


 

AsociereExistă o asociere slabă în agregare.Există o asociere puternică în compoziție.
UMLÎn UML agregarea poate fi definită folosind segmentul de linieÎn compoziția UML pot fi definite folosind diamant.
FuncţieȘtergerea asamblării nu are efect în agregare.Ștergerea compoziției poate avea efect în compoziție

Ce este agregarea?

Agregarea este o relație cu o clasă de asamblare cu clasa constitutivă. În UML, care este un limbaj de modelare unificat, care arată relația de agregare cu un segment de linie. Agregarea arată relații precum unul la unu, unul la mulți, mulți la mulți. Dacă o singură clasă are mai multe clase, există o relație de la una la multe, în timp ce multe clase au mai multe obiecte sunt relațiile de la o singură la una. „Are“ este o relație descrisă în agregare.

Ce este compoziția?

Forma restrictivă de asociere este o compoziție în care există o relație părintească în care copilul nu poate exista independent fără un părinte. În UML este reprezentat de un diamant solid minuscul. În compoziție, partea constitutivă poate fi legată de cea mai mare parte din ansamblu. O clasă devine container și alta clasă devine conținut care se află în acel container. Acestea au parte de moștenire foarte ușoară, iar metoda unei clase poate fi folosită fără a scrie încă din nou întregul cod. În compoziție există o „parte a” relației.

Diferențele cheie

  1. În agregare există o relație părinte copil în care copilul poate exista în mod independent, în timp ce Compoziția este o relație părintească în care un copil nu poate exista independent fără un părinte.
  2. Există o asociere slabă în agregare, în timp ce există o asociere puternică în compoziție, în timp ce există o asociere puternică în compoziție.
  3. În UML agregarea poate fi definită folosind segmentul de linie, în timp ce în UML compoziția poate fi definită folosind diamant.
  4. Ștergerea ansamblului nu are efect în agregare, în timp ce ștergerea compoziției poate avea efect în compoziție

Concluzie

În acest articol de mai sus vedem diferența clară între agregare și compoziție cu exemple.

Video explicativ