Programare compoziție, program de viață

Compoziție în programare sau compoziție de obiecte. De asemenea, agregarea și includerea înseamnă crearea obiectelor din clasele existente ca elemente ale altor clase. Compoziția este adesea menționată ca o "relație de apartenență" în conformitate cu principiul că "mașina are un corp, roți și un motor".

Obiectele născute dintr-o clasă nouă sunt de obicei declarate private, ceea ce le face indisponibile pentru programatorii de aplicații care lucrează cu clasa. În plus, creatorul de clase poate modifica aceste obiecte fără a deranja munca codului client existent. În plus, înlocuirea obiectelor imbricate în stadiul de execuție a programului vă permite să vă modificați dinamic comportamentul. Mecanismul de moștenire nu are o astfel de flexibilitate, deoarece clasele derivate sunt constrânse să fie verificate la etapa de compilare.

Spre deosebire de moștenire, unde tipul relației dintre obiectul copil și părinte este legătura Is-a, adică dacă obiectul de pisică este dat de animal. atunci pisica este un animal (pisica este un animal de companie), apoi in compozitie tipul de relatie este - are (masina are motorul).

Notație UML

În UML, este marcat ca un diamant și o linie solidă desenată. Aceasta afectează întotdeauna 1 sau 0. 1, deoarece nu mai mult de un obiect la un moment dat poate fi asociat unui alt obiect.

O formă mai generală, Agregarea, este descrisă ca un romb gol și o linie solidă.

Articole similare