Bonjour à tous,
Je n'ai pas trouvé de sujet similaire sur le forum même si je me doute qu'il y en ait qui se cache quelque part, car ce problème est simple et sûrement déjà traité. Si c'est le cas je m'en excuse car j'aurai essayé de le trouver, mais en vain..
Bref, mon problème concerne un cas simple :
J'ai une classe mère Artiste.
J'ai aussi deux sous-classes Compositeur et Interprète qui hérite de Artiste.
Le problème c'est qu'on se doute bien qu'un Artiste peut être les deux à la fois.
Comme je travaille souvent en MCD, j'ai un héritage T (totalité sans exclusion).
Au niveau de mes classes, je suis parti sur une seule classe Artiste avec un attribut "Type" qui m'indique si c'est un Interprète ou un Compositeur ou les deux (j'ai fait de même au niveau de la base de données).
Cependant, j'utilise un design pattern Factory qui me créer mes objets, or j'aimerais qu'au lieu de me créer des Artistes en spécifiant l'attribut Type en fonction de si c'est un Interprète ou si c'est un compositeur ou les deux, ça me créer un objet Interprète ou Compositeur ou Compositeur-Interprete (pour plus de lisibilité).
A force de travailler sur des cas complexes, j'en oublie les bases, alors s'il est possible de me dire si il y a une alternative (niveau modélisation UML) pour obtenir ce résultat ou si je ne peux que garder ma solution actuelle, à savoir une seule classe Artiste.
Merci d'avance,
Lystik.
Partager