Différence entre l'agrégation et la composition

Différence entre l'agrégation et la composition

Différence clé - AGLÉGATION VS COMPOSITION
 

La programmation orientée objet (OOP) est un paradigme commun dans le développement de logiciels. L'objet est une instance d'une classe. Il n'est pas possible de créer des objets à la fois. Il devrait y avoir un plan ou une description pour créer un objet. Ce plan est connu comme une classe. Une classe contient des propriétés et des méthodes. Les objets sont créés à l'aide de classes. La classe et l'objet sont similaires à un plan et à une maison dans le monde réel. Il n'est pas possible de construire une maison sans plan approprié. De même, une classe est utilisée pour créer un objet. Un objet collabore avec d'autres objets. Un lien avec représente la relation de deux ou plusieurs objets est appelé «association». L'agrégation et la composition sont des types d'associations. Ils décrivent la relation entre les classes. Cet article traite de la différence entre l'agrégation et la composition. Le différence clé entre l'agrégation et la composition est que L'agrégation est une association entre deux objets qui décrit la relation «Has A» et la composition est un type d'agrégation plus spécifique qui implique la propriété.

CONTENU

1. Aperçu et différence clé
2. Qu'est-ce que l'agrégation
3. Qu'est-ce que la composition
4. Similitudes entre l'agrégation et la composition
5. Comparaison côte à côte - agrégation vs composition sous forme tabulaire
6. Résumé

Qu'est-ce que l'agrégation?

Une relation entre deux objets est montrée en trace une ligne dans le langage de modélisation unifiée (UML). Le lien est une association. UML aide à obtenir une représentation visuelle du système. C'est différent des langages de programmation réguliers. L'association définit également la multiplicité des objets. Ils sont un à un, un à plusieurs et plusieurs à plusieurs. Lorsqu'un seul objet de classe A est associé au seul objet de classe B, c'est une relation un à un. Un exemple est un auteur écrivant un livre. Dans cet exemple, un auteur écrit un livre.

Lorsqu'un objet de classe A est associé à de nombreux objets de classe B, c'est une relation un à plusieurs. Un exemple est qu'un département peut avoir de nombreux employés. Lorsque l'objet de la classe A est associé à de nombreux objets de classe B et qu'un objet de classe B est associé à de nombreux objets de classe A, c'est une association à plusieurs à plusieurs. Un exemple est qu'un employé peut travailler sur plusieurs projets et un projet peut avoir plusieurs employés.

L'agrégation est une association de type qui décrit davantage la relation entre les objets. L'agrégation décrit une relation «a une». Quelques exemples qui décrivent la relation sont, un étudiant «a un» Student ID, un véhicule «a un moteur». Il est également possible d'élargir une grande quantité avec la relation. Quelques exemples sont, une banque «a de nombreux» comptes bancaires, une classe «a de nombreux étudiants. Il peut être expliqué en utilisant l'exemple ci-dessous.

Figure 01: Agrégation

Selon l'exemple ci-dessus, la salle de classe se compose d'un étudiant ou de nombreux étudiants. La multiplicité est également utilisée pour indiquer le nombre d'objets. Il décrit qu'une classe a plusieurs élèves. Le symbole du diamant représente l'agrégation en UML. Les objets étudiants ne comptent pas sur l'objet de classe. Si l'objet de classe est détruit, il n'affectera pas les objets étudiants. Ces objets existeront toujours.

Qu'est-ce que la composition?

La composition est une forme d'agrégation plus spécifique. Il décrit la propriété. Il peut être expliqué en utilisant l'exemple ci-dessous.

Figure 02: Composition

Selon ce qui précède, l'objet livre se compose d'objet de page ou de pages. La multiplicité est également utilisée pour indiquer le nombre d'objets. Il décrit qu'une classe a plusieurs élèves. Le symbole du diamant mis en évidence représente la composition en UML. Comme le livre a une page ou plusieurs pages, c'est une agrégation, mais elle est plus spécifiée. Si l'objet de livre est détruit, alors les objets de la page sont également détruits. Les objets de page ne peuvent pas exister sans l'objet de livre. Par conséquent, la composition est une forme plus spécifique d'une agrégation qui implique la propriété.

Quelles sont les similitudes entre l'agrégation et la composition?

  • Les deux sont utilisés dans la programmation orientée objet.
  • Les deux sont utilisés dans le langage de modélisation unifiée (UML) pour obtenir une compréhension visuelle du système.

Quelle est la différence entre l'agrégation et la composition?

Agrégation vs composition

L'agrégation est une association entre deux objets qui décrit la relation «Has A». La composition est le type d'agrégation le plus spécifique qui implique la propriété.
 Symbole UML
L'agrégation est indiquée par un diamant. La composition est indiquée par un diamant mis en évidence.
Fonctionnalité
En agrégation, si l'objet propriétaire détruit, il n'affectera pas l'objet contenant. En composition, si l'objet propriétaire détruit, il affectera l'objet contenant.

Résumé - Agrégation vs composition 

La programmation orientée objet est un paradigme majeur dans le développement de logiciels. Dans OOP, le système est modélisé à l'aide d'objets. Ces objets n'existent pas isolément. Les objets collaborent avec d'autres objets. La relation entre les objets est connue sous le nom d'association. L'agrégation et la composition sont des types d'association. La différence entre l'agrégation et la composition est que l'agrégation est une association entre deux objets qui décrit la relation «Has A» et la composition est le type d'agrégation plus spécifique qui implique la propriété. L'agrégation et la composition aident à comprendre le comportement du système.

Téléchargez la version PDF de l'agrégation vs composition

Vous pouvez télécharger la version PDF de cet article et l'utiliser à des fins hors ligne selon la note de citation. Veuillez télécharger la version PDF ici différence entre l'agrégation et la composition

Référence:

1. Utilisation de l'agrégation et de la composition, People Career, 22 mai 2015. Disponible ici