读书笔记--大话设计模式
来源:互联网 发布:软件系统安全架构 编辑:程序博客网 时间:2024/05/16 07:15
《大话设计模式》的确写的很不错。 把晦涩解懂的设计模式,讲的通俗易懂。 边读边用Evernote做笔记,
把印象深刻的整理了一下。
先补习一下UML的图示法:继承,接口,组合,依赖,关联
策略模式(Strategy)
定义一系列算法,所有算法完成的都是相同的工作,只是实现不同。减少算法与使用类之间的藕合。计费策略会用到很多。
工厂模式(Factory Mode)
提供一个方法供客户端调用,生成不同的对象。会话就是使用的工厂模式。由工厂生成不同的会话对象,会话又由基类的接口统一管理
依赖倒转(里氏替换LSP)
让调用者不关心子类的具体实现。
让调用者不关心子类的具体实现。
由于是用的是接口,实现都在子类。依赖倒转其实可以说是面向对象的标志,即程序中所有的依赖关系都终止与抽象类或接口,那就是面向对象,反之就是过程设计。
观察者模式,也叫发布与订购模式(Publish/Subscribe)
事件委托(Event delegate)
定义了一种一对多的依赖,让多个观察者监听某一个主题,并使它们自己更新自己。
定义了一种一对多的依赖,让多个观察者监听某一个主题,并使它们自己更新自己。
这两个模式是很相近。 尤其是事件委托,在WINDOWS桌面编程当中用的非常多。
感觉上,对于监控与告警类的需求,可以用这种模式。 当出现一类严重异常时,发
志一些告警消息。
中介者模式(Mediator)
用一个中介来封装一系列的对象交互。下面的图的对比很形象。
用一个中介来封装一系列的对象交互。下面的图的对比很形象。
这个模式,让我想起了默认网关与路由, 对于交互复杂的情况下,使用一个中介模块,实现路由转发,会将各个模块的逻辑复杂度降低。
命令模式(Command)
1)容易设计命令队列
2)容易记录命令日志
3)允许接收方否决请求
命令模式,把请求的对象与执行的对象分割开。
1)容易设计命令队列
2)容易记录命令日志
3)允许接收方否决请求
命令模式,把请求的对象与执行的对象分割开。
书上举的例子很形象,路边的烧烤摊,老板手忙脚乱。 烧烧店有服务员,下订单,变更订单, 下单,收费都很顺。
0 0
- 《大话设计模式》读书笔记
- 【读书笔记】大话设计模式
- 《大话设计模式》读书笔记
- 读书笔记--大话设计模式
- 大话设计模式 读书笔记
- 《大话设计模式》读书笔记
- 大话设计模式读书笔记
- 大话设计模式读书笔记一
- 大话设计模式读书笔记二
- 大话设计模式读书笔记三
- 大话设计模式读书笔记之设计原则
- 大话设计模式读书笔记3 装饰模式
- 大话设计模式读书笔记 代理模式
- 《大话设计模式》读书笔记--简单工厂模式
- 《大话设计模式》读书笔记2 策略模式
- 《大话设计模式》读书笔记4 装饰模式
- 《大话设计模式》读书笔记5 代理模式
- 大话设计模式读书笔记之策略模式
- 【华为oj】提取不重复的整数
- ESP定律和堆栈平衡
- 电容标识
- PHP应用API接口实现
- 查看django orm执行的sql
- 读书笔记--大话设计模式
- 内存管理:使用链式栈实现内存的有效管理与监控
- TabError: Inconsistent use of tabs and spaces in indentation
- iOS:hidesBottomBarWhenPushed的正确用法
- iOS之UIImage的三中读取方法
- 【JAVA基础】JAVA中分包的规范
- zoj 2734 Exchange Cards
- nyoj35表达式求值
- IOS学习之解析数据(NSJSONSerialization)