Qu'est-ce que la composition?
La composition est un cas particulier d'agrégation qui vous aide à spécifier une relation de pièce entière entre la classe de composition et une classe subordonnée (pièce).
Qu'est-ce que l'agrégation?
L'agrégation est un cas particulier d'association lorsqu'un objet «a» un autre objet, que vous pouvez avoir une agrégation entre eux. La direction entre eux vous aide à spécifier quel objet contient l'autre objet. L'agrégation est également connue sous le nom de relation «Has-a». C'est un sous-type de relation d'association dans UML.
DIFFÉRENCES CLÉS
- L'agrégation est un type d'association entre deux objets décrivant la relation «avoir un» tandis que la composition est un type spécifique d'agrégation qui implique la propriété.
- L'agrégation est indiquée en utilisant une ligne droite avec une pointe de flèche vide à une extrémité. D'autre part, la composition est indiquée en utilisant une ligne droite avec une pointe de flèche pleine à l'une quelconque des extrémités.
- Dans une relation d'agrégation, les objets qui sont associés les uns aux autres peuvent rester dans la portée d'un système sans les uns des autres. Mais dans une relation de composition, les objets associés les uns aux autres ne peuvent pas rester dans la portée les uns sans les autres.
- Dans l'agrégation, les objets liés ne dépendent pas de l'autre objet, tandis que dans la composition, les objets sont fortement dépendants les uns des autres.
- Dans Agrégation, la suppression d'un seul élément n'affecte pas un autre élément associé. Au contraire, en composition, la suppression d'un seul élément affecte un autre élément associé.
- L'agrégation est désignée par un diamant rempli tandis que la composition est désignée par un diamant vide.
Statistiques clés
Agrégation | Composition | |
Propriétaire | Pas de propriétaire | Propriétaire unique |
Durée de vie | Ont leur vie. | Durée de vie du propriétaire. |
Objet enfant | Les objets enfants sont tous indépendants. | Les objets enfants appartiennent à un seul parent. |
Exemple de composition
Le dossier peut contenir de nombreux fichiers, tandis que chaque fichier a exactement un dossier parent. Si un dossier est supprimé, tous les fichiers contenus sont également supprimés. Dans une agrégation composite, un objet peut faire partie d'un seul composite à la fois.
Exemple d'agrégation
Par exemple, votre voiture se compose des roues, du moteur, de la boîte de vitesses, de la direction et du corps principal, etc.
Ici, la voiture à la roue est une agrégation, la voiture au moteur est une autre agrégation, la voiture à la boîte de vitesses une autre, et ainsi de suite.
Ce type d'appariement vous aide à définir la multiplicité de la pièce constitutive dans l'assemblage comme résultat. Le nombre d'objets peut également être représenté.
Une voiture a besoin d'une roue pour fonctionner correctement. Cependant, on ne peut pas en dire autant avec une voiture. La même logique peut être appliquée au vélo, à la bicyclette ou à tout autre véhicule mais pas à une voiture en particulier.
Ici, l'objet roue est significatif même sans l'objet voiture. C'est ce qu'on appelle une relation d'agrégation.
Différence entre l'agrégation et la composition
Voici la principale différence entre l'agrégation et la composition:
Agrégation | Composition |
L'agrégation est un type d'association entre deux objets qui décrit également la relation «avoir un». | La composition est un type spécifique d'agrégation qui implique la propriété. |
L'agrégation est indiquée en utilisant une ligne droite avec une pointe de flèche vide à une extrémité. | La composition est indiquée en utilisant une ligne droite avec une pointe de flèche pleine à l'une des extrémités. |
L'agrégation fait partie d'une relation d'association. | La composition fait partie d'une relation d'association. |
L'agrégation est considérée comme un type d'association faible. | La composition est considérée comme un type d'association fort. |
Dans une relation d'agrégation, les objets qui sont associés les uns aux autres peuvent rester dans la portée d'un système sans les uns des autres. | Dans une relation de composition, les objets associés les uns aux autres ne peuvent pas rester dans l'étendue les uns sans les autres. |
Dans l'agrégation, les objets liés ne dépendent pas de l'autre objet. | En composition, les objets sont fortement dépendants les uns des autres. |
Dans Agrégation, la suppression d'un seul élément n'affecte pas un autre élément associé. | En composition, la suppression d'un seul élément affecte un autre élément associé. |
Exemple: une voiture a besoin d'une roue, mais elle n'a pas toujours besoin de la même roue. Une voiture peut également fonctionner correctement avec une autre roue. | Exemple: un fichier est placé dans le dossier. Si l'on supprime le dossier, le fichier associé à ce dossier donné est également supprimé. |
Dans Agrégation, relation parent avec l'entité enfant. | Dans la composition, l'entité parente est propriétaire de l'entité enfant. |
Il est indiqué par un diamant rempli | Il est indiqué par un losange vide |
L'enfant n'a pas de vie. | L'enfant peut avoir une vie. |
Il est représenté par un losange creux à côté de la classe d'assemblage. | Il est représenté par un losange plein à côté de la classe d'assemblage. |
La suppression de l'assemblage n'affecte jamais ses pièces. | Dans le cas de la possession d'une classe, l'objet est supprimé. Il affecte également l'objet de classe conteneur. |