Simple Factory
Simple Factory
Simple Factory
Intention
Le patron Simple Factory représente le moyen le plus simple pour créer et
gérer des objets, car il encapsule simplement la création de différents
types d'objets en spécifiant l'objet à créer en passant son type à la fabrique.
Problème
Le patron Simple Factory vise à résoudre un problème fondamental lors de
l’instanciation (la création d’un objet concret d’une classe).
Structure
Diagramme UML du patron Factory
Participants
● SimpleFactory implémente les opérations qui créent les objets
concrets;
● AbstractProduct déclare une interface pour un type d'objet;
● ConcreteProduct définit un objet qui doit être créé par la fabrique
concrète correspondante et implémente l'interface AbstractProduct.
JavaCopy
JavaCopy
JavaCopy
JavaCopy
Une usine peut aussi être utilisée comme un gestionnaire des objets
qu'elle a créé, et peut ainsi réaliser une méthode pour localiser un objet (en
renvoyant une référence pour cet objet), et pour détruire un objet à la
demande.
Usages connus
Ce patron est plus un idiome de programmation qu’un design pattern.
Rappel :
Le patron de conception propose une solution générale à un problème
récurrent dans la conception de logiciels tandis que l’idiome de
programmation propose une solution propre à un langage pour des détails
d'implémentation.
Avantages et inconvénients
Avantages
● C'est le moyen le plus simple de gérer la création d'objets en
spécifiant l'objet à créer en passant le type à la fabrique.
Inconvénients
● Nous devons modifier la classe Factory pour créer d’autres objets.
● Nous n’avons pas la possibilité de créer automatiquement des
familles d’objets et des combinaisons d’objets issues de plusieurs
types d'usines.
Conclusion
Cette leçon présente le patron Factory ou simple Factory qui gère la
création d’objet de la façon la plus simple, mais il ne permet pas de créer
des usines et des familles d’objets. Il permet donc de prendre en charge et
d’uniformiser l’instanciation de tous les objets d’une interface.