观察者模式 observer
隐喻
无处不在的类比: 类比订阅报纸, 实现观察者模式 1. 报社出版报纸 2. 向某家报社订阅报纸, 只要他们有新报纸出版, 就会给你送来, 只要你是他们的客户, 你就一定会一直收到报纸. 3. 当你不再想看报纸的时候, 取消订阅, 他们就不会再送报纸过来. 4. 只要报社还在运营, 就会一直有人(或单位)向他们订阅和取消报纸.
好处
使用观察者的好处是减少了观察者之间的耦合, 每个观察者直到目标就可以了, 无需关系其他的观察者, + 同时, 发布者也不用具体关心观察者, 只要维护一个观察者的序列就可以了( 增加, 减少)
例子
气象站 问题描述, 希望建立一个公告板, 对气象站的检测的温度, 湿度, 气压对某些特定公司进行通报, (现况板, 通告板)
增加观察者- 可复用
删除观察者-可复用
- 定义观察者模式
当你试图勾勒观察者模式时,可以利用报纸订阅服务,以及出版者和订阅者比拟这一切。
- 例子