《Head First 设计模式》读书笔记

ZhuYuanxiang 2018-12-21 00:00:00
Categories: Tags:

阅读指南

精读一章内容,手工输入一章代码 ( 注 1 ) ,与书中描述的思想进行印证,实在搞不懂就放过吧。设计模式绝对不会一次就看懂的。

这本书对于理解设计模式很有帮助,就是例子不太符合中国人的思维模式,但是坚持下去肯定会搞明白的。

全书精华

模式总结

Strategy ( 策略模式 )

定义一组算法类,用于运行过程中替换算法。

Observer ( 观察者模式 )

定义一个主题和一组观察者,可以在主题变化时通知订阅了主题的观察者。

Decorator ( 装饰模式 )

本质不变,外面增加一层层装饰。例如 : Stream 的包装。

Factory ( 工厂模式 )

所有的工厂都是用来封装创建对象的过程 。

Singleton ( 单例模式 )

通过禁止其他对象对自己实例化,而改由自己的静态方法对自己实例化,确保一个类只有一个对象。

Command ( 命令模式 )

解耦调用者与执行者之间的关系,相互之间的联系通过命令对象完成,调用者只对调用对象的 execute()方法发出请求。

Template ( 模板模式 )

封装算法,在一个方法中定义一个算法的框架,而将具体的实现委托给子类。框架中调用的方法为钩子,从而超类控制一切,子类实现钩子等待超类调用。

Collections ( 集合 )

State ( 状态模式 )

将状态封闭为对象,将行为封装成方法;新的状态生成新对象,新的行为生成新的方法。

Proxy ( 代理模式 )

采用创建代理对象的方式控制客户端对具体对象的访问。

Compound ( 复合模式 )

MVC-Model,View,Controller

注 :

编程思路的演变 : 针对函数编程→针对对象编程→针对接口编程