Observer Pattern
PHP 🟡 MidDefinition
Pattern ou un sujet notifie automatiquement ses observateurs quand son etat change. Base du systeme d'evenements en PHP et du Hook System WordPress.
Analogie
Comme une chaine YouTube : quand une video est publiee, tous les abonnes sont notifies automatiquement.
Exemple de code
interface Observer {
public function update(Event $event): void;
}
class EventDispatcher {
public function dispatch(Event $event): void {
foreach ($this->listeners[$event::class] as $listener) {
$listener->update($event);
}
}
}
Cas d'usage
Pour decoupler les actions : apres la creation d'un compte, envoyer un email, creer un log, notifier l'admin.
Anti-pattern
Creer des chaines d'observateurs qui se declenchent mutuellement (boucle infinie).