Identifiant :
Mot de passe :

Patrons de conception

Composition indirecte sur <<Composite>>

Diagramme de classes :

Diagramme de classes

Points forts :

  1. 1. Découplage et extensibilité
    1. KO 1.1 Factorisation maximale de la composition
    2. OK 1.2 L'ajout ou la suppression d'une feuille n'implique pas de modification de code
    3. OK 1.3 L'ajout ou la suppression d'un composite ne n'implique pas de modification de code
  2. 2. Protocole uniforme
    1. OK 2.1 Protocole uniforme sur les opérations des objets composés
    2. KO 2.2 Protocole uniforme sur la gestion de la composition
    3. KO 2.3 Point d'accès unique pour la classe client

Contextualisations du patron abîmé sur différents problèmes

Problème 1 :

Enoncé du problème :
Modéliser un système permettant de dessiner un graphique. Un graphique est composé de lignes, de rectangles, de textes et de groupes, un groupe pouvant être composée d'autres groupes, de lignes, de rectangles et de textes.
Solution optimale :

Diagramme de classes :

Diagramme de classes

This solution allows a good decoupling, and a good extensibility.

Solution alternative :

Diagramme de classes :

Diagramme de classes

Except the non-maximal factorization of the composition and the non-uniform protocol on composition managing, this solution is not so bad.

Les têtes de mule
Cédric BOUHOURS
Cédric BOUHOURS
Cédric BOUHOURS