设计模式详解

来源:互联网 发布:淘宝千人千面收费吗 编辑:程序博客网 时间:2024/06/17 14:36

一、设计模式的分类

总体来说设计模式分为三大类:

创建型模式,共五种:工厂方法模式、抽象工厂模式、单例模式、建造者模式、原型模式。

结构型模式,共七种:适配器模式、装饰器模式、代理模式、外观模式、桥接模式、组合模式、享元模式。

行为型模式,共十一种:策略模式、模板方法模式、观察者模式、迭代子模式、责任链模式、命令模式、备忘录模式、状态模式、访问者模式、中介者模式、解释器模式。

================================================================

设计原则: 针对接口编程。。。

              最少知道迪米特原则  。。。。  

              单一职责原则(就是要单一)。。。

              开闭原则:对修改关闭,对新增开放。。。

      

       


================================================================

1、模板方法设计模式:

模板方法final定,抽象钩子调子类

意思:使用一个抽象的父类,在其中定义一个final的方法,在final方法中调用父类中定义的这些方法。

子类继承父类,实现父类中需要实现的抽象方法。这就是抽象钩子调子类。

================================================================

2、外观模式

外观模式最简单,最少知道迪米特

意思:在很多方法面前,加一个门面,调的时候,只调门面方法,或者门面类。

================================================================

3、策略模式:

一个接口多实现,用户自选自实现,分类算法,选实现。

意思:就是用调用接口,在客户端程序那里,自己通过多态,父类引子类,来实现这个策略模式。

================================================================

4、适配器模式:

适配器两方法,一继一组巧接口,组合private引入可。

================================================================

5、装饰器模式

装饰子类多组合,装饰真实同接口,装饰类型引真实,子类继承装饰类,super注意多引用,真实功能多重写,客户嵌套功能多。

=================================================================

6、代理模式:

代理真实同接口,代理里面引真实,静态代理自己做,动态代理系统生,动态代理学反射。

=================================================================

7、建造者模式

一个产品多部分,建造接口定部分,具体建造(实)现接口,导演引用建造类,自定实现多部分。


=================================================================








0 0