Observer

Architecture 🟢 Junior

Définition

Définit une dépendance un-a-plusieurs : quand un objet change d'état, tous ses dépendants sont notifies automatiquement.

Analogie

S'abonner a une chaîne YouTube : tu es notifie a chaque nouvelle vidéo sans vérifier manuellement.

Exemple de code

class EventEmitter {
  #subs = new Map();
  on(event, fn) { this.#subs.set(event, [...(this.#subs.get(event) ?? []), fn]); }
  emit(event, data) { this.#subs.get(event)?.forEach(fn => fn(data)); }
}

Cas d'usage

Systèmes de notifications, réactivé UI (React state), EventEmitter Node.js.

Anti-pattern

Oublier de se désabonner — fuite mémoire classique.
#architecture#interview#gof#behavioral

← → au clavier pour passer d'une fiche à l'autre