Factory Method

PHP 🟡 Mid

Definition

Pattern de creation qui delegue l'instanciation d'objets a une methode ou classe dediee, plutot que d'appeler new directement.

Analogie

Comme une commande au restaurant : tu choisis le plat, la cuisine decide comment le preparer.

Exemple de code

class NotificationFactory {
  public static function create(string $type): Notifier {
    return match($type) {
      'email' => new EmailNotifier(),
      'sms' => new SmsNotifier(),
      'push' => new PushNotifier(),
    };
  }
}

Cas d'usage

Pour centraliser la logique de creation et decoupler le code appelant des classes concretes.

Anti-pattern

Creer des factories pour des objets simples qui n'ont pas de logique de creation.
#core#interview#pattern