Was ist das Fabrikmuster?
In der Computerprogrammierung ist eine Fabrik ein Objekt, mit dem andere Objekte erstellt werden. Objekte beziehen sich in diesem Fall auf Werte, Funktionen oder Datenstrukturen, die im Code verwendet werden. Das Fabrikmuster ist ein Entwurfsmuster, das sich auf Fabriken stützt, um Objekte herzustellen, anstatt die Objekte direkt zu erstellen. Dadurch kann der Code leicht geändert werden und die Flexibilität bleibt erhalten. Es wird häufig in der objektorientierten Computerprogrammierung verwendet, bei der Objekte zum Erstellen von Programmen und Anwendungen verwendet werden.
Eine Fabrik verfügt über eine Methode für jede Art von Objekt, die sie erstellen kann. Eine Methode ist im Wesentlichen ein Muster. Es besteht aus einer Reihe von Anweisungen, die als Subroutine bezeichnet werden und die normalerweise vom Benutzer bereitgestellte Parameter aufnehmen und ein bestimmtes Objekt ausgeben. Das meiste geschieht hinter den Kulissen, ohne dass der Benutzer oder Client etwas darüber weiß.
Bei Verwendung des Factory-Musters interagiert das Programm mit einer gemeinsamen Schnittstelle, anstatt direkt mit Klassen zu kommunizieren. Eine Klasse wird als Vorlage zum Erstellen von Objekten verwendet. Jedes Objekt einer bestimmten Klasse hat dasselbe Verhalten und dieselben grundlegenden Attribute. Klassen können weiter in Unterklassen unterteilt werden, von denen jede einige der Attribute der Klasse erbt, zu der sie gehört. Ein Objekt einer bestimmten Klasse wird als Instanz dieser Klasse bezeichnet.
Wenn der Benutzer beispielsweise möchte, dass das Programm ein Quadrat in einem Programm oder Betriebssystem erstellt, das das Factory-Muster verwendet, benachrichtigt das Programm die Factory, dass der Benutzer ein Objekt mit vier Seiten gleicher Länge und vier rechten Winkeln benötigt. Die Fabrik würde der Formmethode mitteilen, dass eine Form benötigt wird. Möglicherweise werden einige Parameter des Quadrats übergeben, z. B. der Bereich, den der Benutzer mit dem Quadrat abdecken möchte.
Unterklassen würden entscheiden, welche Klasse verwendet werden soll. Eine Instanz des Klassenquadrats wird an die Fabrik zurückgegeben, die sie an das Programm weitergibt, das sie zuerst angefordert hat. Der Benutzer würde nur die Informationen sehen, die an das Werk gesendet und vom Werk zurückgesandt wurden. Das Innenleben der Fabrik ist nicht zu sehen.
Der Vorteil der Verwendung eines Factory-Musters besteht darin, dass das Programm einfach geändert werden kann. Neue Typen können zum Factory-Muster hinzugefügt werden, indem einfach ein winziger Teil des Client-Codes geändert wird, normalerweise nicht mehr als eine Zeile. Bei anderen Programmiermustern muss der Programmierer den Code an jedem Ort ändern, an dem ein Objekt erstellt wird.