Das Factory Pattern gehört zu den absoluten Basics eines jeden Entwicklers in der Objektorientierten Programmierung und zählt dabei zu der Gattung der so genannten Erzeugungsmuster oder auch Creational Pattern. Auch wenn in vielen Fällen die Erstellung von Instanzen einer Klasse durch den new-Operator ausreicht, kann es bei der Instanziierung von komplexeren Objekten zu Problemen kommen. Sobald eine Reihe von Schritten notwendig ist, um ein Objekt zu erstellen – sei es durch die Angabe von Parametern oder durch die Notwendigkeit einer nebenläufigen Instanziierung von Helper-Klassen – empfiehlt es sich, über kurz oder lang auf das Factory Pattern zurückzugreifen.
Die Verwendung von new wird in solchen Fällen nicht ausreichend sein, da es sich hierbei dann nicht mehr um eine einzelne Operation handelt, sondern vielmehr ein (komplexer) Prozess dargestellt werden muss, der auch ordnungsgemäß gekapselt werden sollte.
Wo und wie die “Fabrik” letztlich erstellt ist zwar nicht egal, aber es gibt hierzu viele Möglichkeiten, die natürlich je nach Anforderung variieren können. Die bestmögliche Implementierung richtet sich daher in erster Linie an das Anforderungsprofil einer Applikation. Auf der einen Seite kann eine solche “Fabrik” direkt in der Klasse integriert werden, die sie letztlich erstellen muss, auf der anderen Seite empfiehlt sich in vielen Fällen eine etwas elegantere Lösung: Die Verwendung einer externen Factory-Klasse.
Wir betrachten daher das Factory Pattern anhand einer Datenbank-Verbindung und zweier separater Klassen: Einem zu erstellenden Endprodukt und einer Entwurfsklasse zur Erstellung von Datenbankverbindungen.
class Product
{
}
class DbConnectionFactory
{
}








Keine Kommentare zu “PHP Design Patterns #4 – Das Factory Pattern”
Sie können dieser Unterhaltung über atom feed verfolgen.
Hinterlassen Sie eine Antwort