认识观察者模式
①报社的业务就是出版报纸
②向某家报社订阅报纸,只要他们有新报纸出版,就会给你送来。只要你是他们的客户,就会一直收到报纸
③当你不想再看报纸的时候,取消订阅,他们就不会再送报纸来
④只要报社还在运行,就会一直有人(或单位)向他们订阅报纸或取消订阅报纸
出版者 + 订阅者 = 观察者模式
出版者 -> 主题(Subject)
订阅者 -> 观察者(Observer)
定义观察者
* 观察者模式定义了对象之间的一对多依赖,当一个对象改变状态时,它的所有依赖者都会收到通知并自动更新
松耦合的威力
当两个对象之间松耦合,它们依然可以交互,但是不太清楚彼此的细节。观察者模式提供了一种对象设计,让主题和观察者之间松耦合。
设计原则
为了交互对象之间的松耦合设计而努力。松耦合的设计之所有能让我们建立有弹性的OO系统,能够应对变化,是因为对象之间的互相依赖降到了最低。
相关推荐
HeadFirst 设计模式学习笔记2--观察者模式 demo http://blog.csdn.net/laszloyu/archive/2010/05/12/5581769.aspx
head first 设计模式 观察者模式 C++ 代码
观察者模式定义了对象之间的一对多依赖,这样一来,当一个对象改变状态时,它的所有依赖者都会收到通知并自动更新。 Observer Pattern defines a one-to-many dependency between objects so that when one object ...
最近在看head first 设计模式,书上的例子是用java编写的.因为工作上C用的比较多,所以决定编看书,边用C++也编写书上的例子.既可以加深对设计模式的理解,也顺便练习下c++. 希望这写代码也能帮助别人学习c++和设计模式...
NULL 博文链接:https://jacky-dai.iteye.com/blog/1132063
第十讲:观察者模式 第十一讲:享元模式 第十二讲:代理模式 第十三讲:外观模式 第十四讲:组合模式 第十五讲:桥接模式 第十六讲:适配器模式 第十七讲:解释器模式 第十八讲:中介者模式 第十九讲:职责...
中文扫描版文档,高清。在pad上可以放大使用也不会模糊!!!!内含的设计模式有:观察者模式等...
2 观察者模式 让你的对象知悉现况 3 装饰者模式 装饰对象 4 工厂模式 烘烤OO的精华 5 单件模式 独一无二的对象 6 命令模式 封装调用 7 适配器模式与外观模式 随遇模式 8 模板方法模式 封装算法 9 选代器与组合模式 ...
Head.First.设计模式.中文版 1 欢迎来到设计模式世界:设计模式入门 模拟鸭子应用 Joe想到继承 利用接口如何? 软件开发的不变真理 分开变化和不变部分 设计鸭子的行为 测试鸭子的代码 动态地设置...
1 欢迎来到设计模式世界:设计模式入门 模拟鸭子应用 Joe想到继承 利用接口如何? 软件开发的不变真理 分开变化和不变部分 设计鸭子的行为 测试鸭子的代码 动态地设置行为 封装行为的大局观 ...
Head.First设计模式_PDF(高清扫描版) 第一部分(共三部分) 在我的资源下可找到其他两部部分 强大的写作阵容。《Head First设计模式》作者Eric Freeman和ElElisabeth Freeman是作家、讲师和技术顾问。Eric拥有耶鲁...
2 观察者模式 让你的对象知悉现况 3 装饰者模式 装饰对象 4 工厂模式 烘烤OO的精华 5 单件模式 独一无二的对象 6 命令模式 封装调用 7 适配器模式与外观模式 随遇模式 8 模板方法模式 封装算法 9 选代器与组合模式 ...
HeadFirst源代码,所有设计模式JAVA代码,观察者模式,装饰者模式,工厂模式,单件模式,命令模式,适配器模式,外观模式等
2观察者模式让你的对象知悉现况 3装饰者模式装饰对象 4工厂模式烘烤OO的精华 5单件模式独一无二的对象 6命令模式封装调用 7适配器模式与外观模式随遇模式 8模板方法模式封装算法 9选...
经典的设计模式,单例模式、工厂模式、装饰模式、观察者模式
内容策略模式:第22页Simuduck实施策略模式:第25页设计益智练习-冒险游戏观察者模式:第60页天真气象站实施
观察者模式的简单例子,根据《Head First设计模式》第2章中的天气预告版的例子编写
1 欢迎来到设计模式世界:设计模式入门 模拟鸭子应用 Joe想到继承 利用接口如何? 软件开发的不变真理 分开变化和不变部分 设计鸭子的行为 测试鸭子的代码 动态地设置行为 封装行为的大局观 ...