Pozorovatel (observer)

Použití

Vzor Pozorovatel lze použít v následujících situacích:

Struktura

Součásti

Subject
Zná své pozorovatele. Subject může pozorovat libovolný počet objektů Observer.

Poskytuje rozhraní pro připojování a odpojování objektů Observer.
Observer
Definuje aktualizační rozhraní objektů, jež mají být upozorněny na změny subjektu.
ConcreteSubject
Ukládá stav vlivu do objektů ConcreteObserver.
Posílá upozornění svým pozorovatelům v případě změny svého stavu.
ConcreteObserver
Udržuje odkaz na objekt ConcreteSubject.
Ukládá stav, který má zůstat konzistentní se stavem objektu.
Implementuje aktualizační rozhraní objektu Observer, které udržuje jeho stav konzistentní se stavem subjektu