觀察者模式(Observer Pattern)用於當一個物件的狀態發生變化時,
所有依賴該物件的物件都能夠接收到通知並進行相應的操作,以達到解耦的目的。
當需要實現一個事件驅動系統時,使用觀察者模式是非常有用的。
例如,當一個對象的狀態改變需要通知其他對象時,可以使用觀察者模式。
- Subject(主題):
- 管理一個觀察者列表,以及通知觀察者的方法。
- ConcreteSubject(具體主題):
- 實現Subject接口,存儲狀態並在狀態改變時通知觀察者。
- Observer(觀察者):
- 定義接收通知並進行相應操作的接口。
- ConcreteObserver(具體觀察者):
- 實現Observer接口,存儲指向Subject對象的引用,以便可以接收通知並進行相應操作。
- Example - Observer Pattern (C++)