HeadFirst 设计模式 2观察者模式 (气象站实现)

来源:互联网 发布:js定位当前地理位置 编辑:程序博客网 时间:2024/05/04 22:39

初识观察者模式

报纸和杂志订阅

(1)报社的业务就是出版报纸。
(2)向某家报社订阅报纸,只要他们有新报纸出版,就会给你送来。只要你是他们的订户,你就会一直收到新报纸。
(3)当你不想再看报纸的时候,取消订阅,他们就不会再送新报纸来。
(4)只要报社还在运营,就会一直有人(或单位)向他们订阅报纸或取消订阅报纸。

观察者模式=主题(出版者)+观察者(订阅者)


观察者模式:定义了对象之间的一对多依赖,这样一来,当一个对象改变状态时,它的所有依赖者都会收到通知并自动更新。


设计原则:
为了交互对象之间的松耦合设计而努力。

松耦合

当两个对象之间松耦合,它们依然可以交互,但是不太清楚彼此的细节。观察者模式提供了一种对象设计,让主题和观察者之间松耦合。为什么呢?(书53)

0 0
原创粉丝点击