观察者模式(From:Head First设计模式)

认识观察者模式

①报社的业务就是出版报纸

②向某家报社订阅报纸,只要他们有新报纸出版,就会给你送来。只要你是他们的客户,就会一直收到报纸

③当你不想再看报纸的时候,取消订阅,他们就不会再送报纸来

④只要报社还在运行,就会一直有人(或单位)向他们订阅报纸或取消订阅报纸

出版者 + 订阅者 = 观察者模式

出版者 -> 主题(Subject

订阅者 -> 观察者(Observer

定义观察者

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

松耦合的威力

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

设计原则

为了交互对象之间的松耦合设计而努力。松耦合的设计之所有能让我们建立有弹性的OO系统,能够应对变化,是因为对象之间的互相依赖降到了最低。

猜你喜欢

转载自chinapoison.iteye.com/blog/1824861
今日推荐