Différence entre agrégation et composition

Différence clé - agrégation vs composition
 

La programmation orientée objet (POO) est un paradigme commun au développement logiciel. 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. Classe et objet ressemblent à un plan et à une maison dans le monde réel. Il n'est pas possible de construire une maison sans un 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 objets ou plus est appelé une "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 agrégation et composition. le différence clé entre agrégation et composition est que L'agrégation est une association entre deux objets qui décrit la relation "a une" et la composition est un type d'agrégation plus spécifique qui implique la propriété..

CONTENU

1. Vue d'ensemble et différence clé
2. Qu'est-ce que l'agrégation?
3. Quelle est composition
4. Similarités entre agrégation et 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 traçant une ligne en langage UML (Unified Modeling Language). Le lien est une association. UML permet d’obtenir une représentation visuelle du système. C'est différent des langages de programmation habituels. L'association définit également la multiplicité des objets. Ils sont un-à-un, un-à-plusieurs et plusieurs-à-plusieurs. Lorsqu'un seul objet de la classe A est associé à cet unique objet de la classe B, il s'agit d'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, il s'agit d'une relation un à plusieurs. Par exemple, un département peut avoir plusieurs employés. Lorsque l'objet de la classe A est associé à de nombreux objets de la classe B et qu'un objet de la classe B est associé à de nombreux objets de la classe A, il s'agit d'une association plusieurs-à-plusieurs. Par exemple, un employé peut travailler sur plusieurs projets et un projet peut avoir plusieurs employés..

L'agrégation est une association de types qui décrit plus en détail la relation entre les objets. L'agrégation décrit la relation «a». Quelques exemples décrivant la relation sont les suivants: un étudiant "a un" identifiant d'étudiant, un véhicule "a un" moteur. Il est également possible d’agrandir une grande quantité avec la relation. Quelques exemples sont, une banque "a plusieurs" comptes bancaires, une classe "a plusieurs" étudiants. Il peut être expliqué en utilisant l'exemple ci-dessous.

Figure 01: Agrégation

Selon l'exemple ci-dessus, la classe est composée d'un ou de plusieurs étudiants. La multiplicité est également utilisée pour indiquer le nombre d'objets. Il décrit qu'une classe a plusieurs étudiants. Le symbole du losange représente l'agrégation en langage UML. Les objets étudiant ne dépendent pas de l'objet de classe. Si l'objet de classe est détruit, cela n'affectera pas les objets de l'étudiant. Ces objets existeront toujours.

Quelle est 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 est constitué d'un objet ou de pages. La multiplicité est également utilisée pour indiquer le nombre d'objets. Il décrit qu'une classe a plusieurs étudiants. Le symbole du diamant mis en surbrillance représente la composition en UML. Comme le livre a une ou plusieurs pages, il s’agit d’une agrégation, mais elle est plus précise. Si l'objet livre est détruit, les objets page sont également détruits. Les objets de page ne peuvent pas exister sans l'objet livre. Par conséquent, la composition est une forme plus spécifique d'agrégation qui implique la propriété.

Quelles sont les similitudes entre agrégation et composition?

  • Les deux sont utilisés dans la programmation orientée objet.
  • Les deux sont utilisés en langage UML (Unified Modeling Language) pour obtenir une compréhension visuelle du système..

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

Agrégation vs composition

L'agrégation est une association entre deux objets qui décrit la relation "a une". La composition est le type d'agrégation le plus spécifique impliquant la propriété.
 Symbole UML
L'agrégation est indiquée par un diamant. La composition est indiquée par un diamant en surbrillance.
La fonctionnalité
En agrégation, si l'objet propriétaire est détruit, cela n'affectera pas l'objet contenant. En composition, si l'objet propriétaire est détruit, cela affectera l'objet qui le contient.

Résumé - Agrégation vs composition 

La programmation orientée objet est un paradigme majeur du développement logiciel. En POO, 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 appelée association. L'agrégation et la composition sont des types d'association. La différence entre agrégation et composition est que l'agrégation est une association entre deux objets qui décrit la relation «a un» 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écharger la version PDF de Agrégation vs Composition

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

Référence:

1.tutorialspoint.com. "Modèle d'objet OOAD." Le point. Disponible ici  
2.6 5 Utilisation de l'agrégation et de la composition, Carrière de personnes, 22 mai 2015. Disponible ici