1.概念
观察这模式,又称为发布者-订阅者模式。
- 主体:观察者,被观察者。
- 关系:n:1。
- 作用:多个观察者关联一个被观察者,当被观察者变化时,可以通知到所有的观察者。
2.实现
被观察者 subject
subject 主要是包含观察者数组属性,以及维护观察者、通知观察者等操作。
subject {
array observers;
addObserver(observer){
observers.add(observer);
}
deleteObserver(observer){
observers.delete(observer);
}
notifyObservers(){
for(observer : observers){
observer.update();
}
}
}
观察者 observer
observer {
update(){
# 信息更新
}
}