`

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

 
阅读更多

认识观察者模式

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

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

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

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

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

出版者 -> 主题(Subject

订阅者 -> 观察者(Observer

定义观察者

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

松耦合的威力

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

设计原则

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

分享到:
评论

相关推荐

    HeadFirst 设计模式学习笔记2--观察者模式 demo

    HeadFirst 设计模式学习笔记2--观察者模式 demo http://blog.csdn.net/laszloyu/archive/2010/05/12/5581769.aspx

    head first 设计模式 观察者模式 C++ 代码

    head first 设计模式 观察者模式 C++ 代码

    《HeadFirst设计模式》观察者模式c++实现代码

    观察者模式定义了对象之间的一对多依赖,这样一来,当一个对象改变状态时,它的所有依赖者都会收到通知并自动更新。 Observer Pattern defines a one-to-many dependency between objects so that when one object ...

    head first 设计模式例子源代码 c++版 第二章 观察者模式

    最近在看head first 设计模式,书上的例子是用java编写的.因为工作上C用的比较多,所以决定编看书,边用C++也编写书上的例子.既可以加深对设计模式的理解,也顺便练习下c++. 希望这写代码也能帮助别人学习c++和设计模式...

    [行为模式]head first 设计模式之观察者模式(observer)

    NULL 博文链接:https://jacky-dai.iteye.com/blog/1132063

    Head First 设计模式 JAVA源码

    第十讲:观察者模式 第十一讲:享元模式 第十二讲:代理模式 第十三讲:外观模式 第十四讲:组合模式 第十五讲:桥接模式 第十六讲:适配器模式 第十七讲:解释器模式 第十八讲:中介者模式 第十九讲:职责...

    HeadFirst设计模式.rar

    中文扫描版文档,高清。在pad上可以放大使用也不会模糊!!!!内含的设计模式有:观察者模式等...

    head first 设计模式

    2 观察者模式 让你的对象知悉现况 3 装饰者模式 装饰对象 4 工厂模式 烘烤OO的精华 5 单件模式 独一无二的对象 6 命令模式 封装调用 7 适配器模式与外观模式 随遇模式 8 模板方法模式 封装算法 9 选代器与组合模式 ...

    Head.First.设计模式.中文版 1-8章

    Head.First.设计模式.中文版 1 欢迎来到设计模式世界:设计模式入门  模拟鸭子应用  Joe想到继承  利用接口如何?  软件开发的不变真理  分开变化和不变部分  设计鸭子的行为  测试鸭子的代码  动态地设置...

    Head First Design Pattern(en) pdf(part1)

    1 欢迎来到设计模式世界:设计模式入门  模拟鸭子应用  Joe想到继承  利用接口如何?  软件开发的不变真理  分开变化和不变部分  设计鸭子的行为  测试鸭子的代码  动态地设置行为  封装行为的大局观  ...

    Head.First设计模式_PDF.part1

    Head.First设计模式_PDF(高清扫描版) 第一部分(共三部分) 在我的资源下可找到其他两部部分 强大的写作阵容。《Head First设计模式》作者Eric Freeman和ElElisabeth Freeman是作家、讲师和技术顾问。Eric拥有耶鲁...

    Head First设计模式 中文 高清

    2 观察者模式 让你的对象知悉现况 3 装饰者模式 装饰对象 4 工厂模式 烘烤OO的精华 5 单件模式 独一无二的对象 6 命令模式 封装调用 7 适配器模式与外观模式 随遇模式 8 模板方法模式 封装算法 9 选代器与组合模式 ...

    HeadFirst源代码

    HeadFirst源代码,所有设计模式JAVA代码,观察者模式,装饰者模式,工厂模式,单件模式,命令模式,适配器模式,外观模式等

    Head First(Design Patterns) 设计模式英文原版

     2观察者模式让你的对象知悉现况  3装饰者模式装饰对象  4工厂模式烘烤OO的精华  5单件模式独一无二的对象  6命令模式封装调用  7适配器模式与外观模式随遇模式  8模板方法模式封装算法  9选...

    Head First 设计模式(中文完整版+附书源码)

    经典的设计模式,单例模式、工厂模式、装饰模式、观察者模式

    head-first-design-patterns:Head First设计模式手册中包含的练习项目

    内容策略模式:第22页Simuduck实施策略模式:第25页设计益智练习-冒险游戏观察者模式:第60页天真气象站实施

    观察者模式简单例子

    观察者模式的简单例子,根据《Head First设计模式》第2章中的天气预告版的例子编写

    Head First Design Pattern(en) pdf(part3)

    1 欢迎来到设计模式世界:设计模式入门  模拟鸭子应用  Joe想到继承  利用接口如何?  软件开发的不变真理  分开变化和不变部分  设计鸭子的行为  测试鸭子的代码  动态地设置行为  封装行为的大局观  ...

Global site tag (gtag.js) - Google Analytics