Se connecter / S'enregistrer
Votre question
Résolu

Les differentes relation en POO

Tags :
  • element
Dernière réponse : dans Etudes - Travail
7 Août 2010 21:39:55

bonjour a tous je suis actuellement en train d'apprendre la POO, j'en suis au chapitre sur les differents relations qu'il peut y avoir entre des classes.
J'ai un souci, je n'arrive pas a faire la difference entre la relation d'agregation et la relation de compostion car la relation de composition à la meme caracteristique que la relation d'agregation, c'est a dire relation contenant/contenu, et c'est sa qui m'embrouille lorsque je compare les 2, voila si quelqu'un peut m'aider a faire la distinction entre ces 2 relations, qu'il vienne m'aider.

PS ; je vous remercie d'avance pour les reponses que vous m'apporterez

Autres pages sur : differentes relation poo

7 Août 2010 21:56:23

je voudrai mettre mon sujet dans la partie programmation, ohhhh moderateurs pouvez vous le faire s'il vous plait ?
m
0
l

Meilleure solution

7 Août 2010 23:14:30

Je pense que la nuance entre l'agrégation et la composition est principalement philosophique, c'est assez subjectif. De mémoire, on a :

L'agrégation (losange vide) est utilisée lorsqu'il y a un couplage fort avec une relation de subordination (l'agrégat est plus important que l'élément agrégé). Si l'agrégat est détruit, l'élément agrégé peut continuer à exister seul. Si l'agrégat est copié, l'élément agrégé ne l'est pas forcément. L'élément agrégé peut aussi être partagé par plusieurs instances de classes.
Exemple : Un humain peut porter des lunettes.

La composition (losange plein) est une agrégation plus forte. Les deux éléments sont liés, de telle sorte que si l'agrégat est détruit, l'élément agrégé ne peut plus exister seul. Idem pour la copie. L'élément agrégé ne peut pas être partagé par plusieurs instances.
Exemple : Un humain est composé notamment d'une tête.

Selon le langage de programmation que tu utilises, il n'y a pas forcément d'outils pour représenter directement ces notions. C'est souvent au programmeur de s'assurer que ces relations sont maintenues.

Je sais pas si c'est plus clair, mais n'hésites pas à demander des précisions si besoin.
partage
9 Août 2010 20:32:47

donc si j'ai bien compris, dans une relation d'agrégation, l'element agregé, n'a pas forcement besoin d'un element agregat pour exister, il peut etre exploité seul car independant par contre dans une relation de composition, un element agrégé de faire partie d'un element agragat pour exister/ pour etre exploité par l'intermediare de l'agregat, il depend donc de celui-ci

c'est bien sa ?
m
0
l
10 Août 2010 00:08:41

Oui je crois que c'est ça. La relation de composition est un peu plus forte ou contraignante que l'agrégation. Mais en principe c'est à toi de gérer la composition dans ton programme.

Avec mon exemple de l'humain je pense qu'on peut facilement voir la nuance entre les deux. Des lunettes peuvent très bien exister indépendamment d'un humain, elles peuvent être portées par plusieurs personnes, etc. Si l'humain est détruit, ses lunettes peuvent continuer à exister par ailleurs. Par contre si t'enlèves le corps d'un humain, sa tête n'a plus de raison d'exister seule.
m
0
l
10 Août 2010 14:03:25

^^ oui je comprend mieux, je te remercie pour ton aide
m
0
l
10 Août 2010 14:03:35

Meilleure réponse sélectionnée par wahhh.
m
0
l
Tom's guide dans le monde
  • Allemagne
  • Italie
  • Irlande
  • Royaume Uni
  • Etats Unis
Suivre Tom's Guide
Inscrivez-vous à la Newsletter
  • ajouter à twitter
  • ajouter à facebook
  • ajouter un flux RSS