Factory

Das Factory-Pattern erstellt Objekte ohne die konkrete Klasse zu spezifizieren.

Es definiert eine Schnittstelle für Objekt-Erstellung, Subklassen entscheiden über konkrete Implementierung.

Important

Factory-Varianten:

  • Simple Factory: Statische Methode für Objekt-Erstellung
  • Factory Method: Subklassen implementieren Erstellungs-Methode
  • Abstract Factory: Familie verwandter Objekte
Example

// Abstract Factory
abstract class VehicleFactory {
   abstract Vehicle createVehicle();
}

// Concrete Factory
class CarFactory extends VehicleFactory {
   Vehicle createVehicle() {
       return new Car();
   }
}

class BikeFactory extends VehicleFactory {
   Vehicle createVehicle() {
       return new Bike();
   }
}

// Verwendung
VehicleFactory factory = new CarFactory();
Vehicle vehicle = factory.createVehicle(); // Erstellt Car

Success

Entkoppelt Objekt-Erstellung von konkreten Implementierungen.