设计模式笔记(1)
来源:互联网 发布:911事件前因后果知乎 编辑:程序博客网 时间:2024/05/29 18:13
最近一直在看设计模式的书,包括Gof的设计模式,阎宏的Java与模式,另外还有大话设计模式和headFirst模式。
横向比较了每本书对某个模式的具体描述和应用,现将对模式的思考和体会作为笔记分享下哈
写在模式之前的一些设计原则
- 单一职责:就一个类而言,应该仅有一个引起它变化的原因。即一个职责的变化不会影响这个类完成其他职责的能力
- 开发-封闭原则:软件尸体(类、模块、函数等等)应该可以扩展,但不可以修改。同时,面对需求,对程序的改动是通过增减新代码进行的,而不是更改现有的代码。
- 依赖倒转原则:针对接口编程,不要对实现编程。抽象不应该依赖细节,细节应该依赖抽象。
- 里氏代换原则:子类型必须能替换他们的父类型。
1-装饰模式
eg.孙悟空的七十二变化,变化成A,可以说成悟空从一只猢狲装饰成A(将A的功能加到了猢狲身上)
eg.一份加牛奶的咖啡,可以当成用牛奶来装饰咖啡的结果
- 形变神不变是装饰模式的关键点。对悟空的七十二变化来说,不管他变成什么样子,他永远是一只猢狲,而他的变化只是在客户端显示的结果。而一杯咖啡,不管它加了牛奶或者其他调料,它的本质仍然是一份咖啡。
- 装饰者和被装饰者有相同的超类型,在任何需要原始对象的场合,都可以用装饰过的对象来代替它。
- 装饰模式可以动态的给一个对象增加一些额外的职责。
- 设计模式笔记(1)
- 设计模式 笔记(1)
- 设计模式复习笔记 (1) 设计模式概述
- 设计模式-笔记1
- 设计模式笔记1
- 设计模式(笔记)
- 设计模式学习笔记(1)
- 设计模式学习笔记(1)
- 设计模式学习笔记(1)
- 设计模式学习笔记(1)
- 大话设计模式笔记(1)
- C#设计模式笔记(1)
- java 设计模式 学习笔记(1) - 简单工厂模式
- 设计模式笔记1:策略模式(Strategy pattern)
- 设计模式学习笔记(1)--认识23种模式
- Head First 设计模式(1)- 策略模式 笔记
- 【设计模式】学习笔记1:策略模式(Strategy)
- Java设计模式笔记(1)单例模式
- linux 获取ip地址 MAC地址 netMask地址
- ubuntu 解压 打包 命令全集
- 在客户端调用JS代码
- 是IIS支持APS.Net
- 关注Oracle(01):大话Oracle与Hyperion联姻后的用户体验
- 设计模式笔记(1)
- 6月29 IO类(1)
- 什么是errno
- SQL语句导入导出大全(转)
- 代码测试----不定参函数
- void的含义
- 设计模式8:Decorator Pattern (装饰模式)
- sys.exit() 也可能不会退出程序
- 关于: check_traffic