大话设计模式
最近打算将常用的设计模式学习一下,所以在kindle上下载了“大话设计模式”一书,并在这里写了一片文章,用来记录下自己学习的点滴。同样该篇文章也是一个学习计划
1. 什么时设计模式?
设计模式其实时一套被反复使用,多数人知晓,经过分类的,代码设计经验的总结。使用设计模式的主要目的就是为了可重用代码,让代码更容易被他人理解,同时保证了代码的可靠性。
设计模式的存在使得代码的编写真正的工程化。
2. 设计模式的要求
(1) Open Close Principle(开闭原则): 对扩展开放,对修改关闭。这个原则主要是为了保证程序的良好扩展性,以便代码更加易于维护和升级。
(2) Liskov Substitution Principle(里氏代换原则):所有基类出现的地方,子类一定可以出现。也就是说所有基类出现的地方都是可以用子类来进行替代的。这是代码中继承与服用的基础,同时也保证了子类的可扩展性。
(3) Dependence Inversion Principle(依赖倒转原则):对接口进行相关的编程,依赖于抽象,而不是依赖于具体。
(4) Interface Segregation Principle(接口隔离原则):在软件的总体设计中,应该尽量做到高内聚,低耦合。也就是说为了降低类之间的耦合度,应该使用多个隔离的接口来实现,避免使用单个的接口。
(5) Demeter Principle(迪米特原则):又叫做最少知道原则,也就是说为了减少实体与实体之间的相互作用,应该尽量使整个系统的功能模块相互独立,减少模块之间的相互交流。
(6) Composite Reuse Principle(合成复用原则):在代码设计时,尽量减少继承的使用,多食用合成以及聚合的方式。
3. 设计模式的分类
构造型模式:生成器模式,工厂方法模式,抽象工厂模式,原型模式,备忘录模式
接口型模式:适配器模式,外观模式,组合模式,桥接模式
责任型模式:单例模式,观察者模式,中介模式,代理模式,享元模式
操作型模式:模板方法模式,状态模式,策略模式,命令模式,解释器模式
扩展型模式:装饰器模式,迭代器模式,访问者模式
4. 构造型模式
1)生成器模式
。。。。。
2)工厂方法模式,抽象工厂模式
工厂模式常见的有四种:普通工厂模式,工厂方法模式(多工厂模式),静态工厂方法模式,抽象工厂模式
详细的介绍请看我的另一篇文章:http://www.cnblogs.com/dong-liu/p/7489622.html
3)原型模式
。。。。。
4)备忘录模式
。。。。。
5. 接口型模式
1)适配器模式
。。。。。。
2)外观模式
。。。。。。
3)组合模式
。。。。。。
4)桥接模式
。。。。。。
6. 责任型模式
1)单例模式
单例模式(Singleton)是java中一个比较常见的设计模式,单例对象主要是为了保证在一个JVM中,该对象只有一个实例存在。
常见实现单例模式的方法有:饿汉式,懒汉式,静态内部类,双检锁模式。
详细细节请看我的另一篇文章:http://www.cnblogs.com/dong-liu/p/7508505.html
2)观察者模式
。。。。。。
3)中介模式
。。。。。。
4)代理模式
。。。。。。
5)享元模式
。。。。。。
7. 操作型模式
1)模板方法模式
。。。。。。
2)状态模式
。。。。。。
3)策略模式
。。。。。。
4)命令模式
。。。。。。
5)解释器模式
。。。。。。
8. 扩展型模式
1)装饰器模式
。。。。。。
2)迭代器模式
。。。。。。
3)访问者模式
。。。。。。

浙公网安备 33010602011771号