Das Observer Pattern, auch Publish-Subscribe oder Event-Listener genannt, ist ein Verhaltensmuster der GoF von Erich Gamma, Richard Helm, Ralph Johnson und John Vlissides, das eine Eins-zu-viele-Abhängigkeit zwischen Objekten definiert. Ändert ein Objekt seinen Zustand, werden alle abhängigen Objekte automatisch benachrichtigt und aktualisiert. Das Subjekt muss weder wissen, wer seine Beobachter sind, noch wie viele es gibt, etwa wenn ein Datenmodell die UI über Events aktualisiert.
GoF-Observer Pattern
Details
- Vollständiger Name
-
GoF Observer Pattern (Behavioral)
- Auch bekannt als
-
Publish-Subscribe, Event-Listener
Absicht:
Definiere eine Eins-zu-viele-Abhängigkeit zwischen Objekten, sodass bei Zustandsänderung eines Objekts alle abhängigen Objekte automatisch benachrichtigt und aktualisiert werden.
Wann zu verwenden:
-
Wenn Änderungen an einem Objekt Änderungen an anderen erfordern und du nicht weißt, wie viele Objekte sich ändern müssen
-
Wenn ein Objekt andere benachrichtigen soll, ohne zu wissen, wer sie sind
Prompt-Beispiel:
"Implementiere ein Event-System nach dem GoF-Observer Pattern, damit Änderungen am Datenmodell automatisch die UI aktualisieren."
Verwandte Anker:
-
GoF Design Patterns (Umbrella)