Quel est le modèle d'usine?
En programmation informatique, une fabrique est un objet utilisé pour créer d'autres objets. Dans ce cas, les objets font référence à des valeurs, des fonctions ou des structures de données utilisées dans le code. Le modèle d'usine est un modèle de conception qui repose sur les usines pour créer des objets plutôt que de les créer directement. Cela permet de modifier facilement le code et de conserver sa flexibilité. Il est largement utilisé dans la programmation informatique orientée objet, qui utilise des objets pour créer des programmes et des applications.
Une usine a une méthode pour chaque type d’objet qu’elle peut créer. Une méthode est essentiellement un motif. Il consiste en un ensemble d'instructions, appelé sous-programme, qui prend en compte les paramètres généralement fournis par l'utilisateur et génère un objet spécifique. La plupart de ces événements se produisent dans les coulisses, sans que l'utilisateur ou le client n'en sachent rien.
Lors de l'utilisation du modèle d'usine, le programme interagit avec une interface commune plutôt que de communiquer directement avec les classes. Une classe est utilisée comme modèle pour créer des objets. Chaque objet d'une classe particulière partage le même comportement et les mêmes attributs de base. Les classes peuvent être divisées en sous-classes, chacune d’elles héritant de certains attributs de la classe à laquelle elle appartient. Un objet d'une classe particulière est appelé une instance de cette classe.
Si, par exemple, l'utilisateur souhaitait que le programme crée un carré dans un programme ou un système d'exploitation qui utilise le modèle d'usine, le programme avertirait l'usine que l'utilisateur avait besoin d'un objet ayant quatre côtés de même longueur et quatre angles droits. L'usine indiquerait à la méthode de la forme qu'une forme était nécessaire. Il peut transmettre certains paramètres du carré, tels que la zone que l'utilisateur voudrait voir occuper par le carré.
Les sous-classes décideraient quelle classe devrait être utilisée. Une instance de la classe carrée serait renvoyée à l'usine, qui la transmettrait au programme qui l'avait demandée en premier. L'utilisateur verrait que seules les informations étaient envoyées à l'usine et renvoyées par l'usine. Le fonctionnement interne de l'usine ne peut pas être vu.
L'utilisation d'un modèle d'usine présente l'avantage de permettre de modifier facilement le programme. De nouveaux types peuvent être ajoutés au modèle d'usine en modifiant simplement une petite partie du code client, généralement pas plus d'une ligne. D'autres modèles de programmation exigent du programmeur qu'il modifie le code à chaque emplacement où un objet est créé.