大话设计模式

最近打算将常用的设计模式学习一下,所以在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)访问者模式

。。。。。。

 

posted @ 2017-11-14 18:23  东木刀纹  阅读(254)  评论(0编辑  收藏  举报