Relation de type agregation et relation de type interfaceentre les objets

,
Tags: #<Tag:0x00007f4910f60f80> #<Tag:0x00007f4910f60eb8>

Bonjour ,
Comment faire pour représenter une relation de type agregation (relation composé-composants)?
De plus j’ai un objet qui est l’interface d’un autre objet. Comment puis-je le représenter?
Merci d’avance.

L’agrégation au sens UML se paramètre par un lien en “unset the reference” et la composition au sens UML par une relation d’objet de type “cascade delete”:

La notion d’interface au sens UML est une notion abstraite qui n’a pas de représentation logique directe au niveau du paramétrage Simplicité. Quel est votre besoin métier sur ce point ? Je pose la question car il y a certainement un pattern Simplicité pour y répondre.

Bonjour,
Merci pour votre réponse. Par rapport à l’interface, en effet j’ai besoin de représenter un composant d’application qui contient toute la logique applicative mais offre des services aux autres composants. Ces services sont comme des interfaces pour le composant applicatif.

Merci pour votre prompte réponse.

Christie

Ne pouvez vous pas simplement implémenter ces “services” comme des actions de votre objet ?

Bonjour,
Oui en effet cela peut être une piste de représenter des services par des actions. Pouvez-vous me montrer comment je le fais?
Dans le tutoriel on l’a vu de façon très spécifique pour l’objet produit. Seulement dans mon modèle j’ai un objet generique appelé composant applicatif. Comment représenter les actions de façon générale dans mon modèle ?
Merci.

Une action se mappe (par exemple) sur une méthode Java, elle s’associe à un objet via une fonction (une action peut donc être associée à N objets, ce qui est un mécanisme qui permet de transposer concrètement une logique “d’implémentation d’interface”).

Cf. la doc de formation pour plus de détails sur la mise en œuvre des actions: training

Bien entendu vous pouvez jouer sur l’héritage des objets et/ou classes Java et/ou du code partagé de vos objets pour partager une méthode entre différents objets.

NB: ces échanges relèvent plus de la formation à Simplicité que du support (qui est la vocation de ce forum)

Bonjour,
Okay. Merci. De plus si je veux implémenter de la généralisation ou de la spécification au sens UML j’utilise la relation inheritance c’est bien cela ?

Oui l’héritage au sens UML se traduit tous simplement par l’héritage entre vos objets métier.

NB: Si vous avez du code Java associé à deux objets qui héritent l’un de l’autre, reproduisez cet héritage aussi au niveau des classes Java.

Ok merci beaucoup. Et donc dans ce cas les actions que je crée dans la classe parente vont être partagées par la classe fille. Merci. Je l’implémente. Je reviens vers vous si j’ai un souci.

Pour rappel, la leçon du tutoriel sur les relations propose une synthèse de ces notions: