您的位置:首页 > 其它

几句话总结常用的设计模式

2016-03-30 13:58 246 查看
前段时间重点学习了一下常用的设计模式,这里总结下,适合有一定设计模式基础的人看,作为复习。以后遇到差不多需求再回来查,来敲定用哪种设计模式。没有学过设计模式的看着可能有些抽象。

创建型模式

单例模式:


类里面有一个本类的静态属性变量,一个静态方法,用于返回这个静态属性变量。

工厂方法模式:

每个继承类分支对应一个工厂分支

抽象工厂模式:

一个工厂分类对应多个类继承分支,可以生产多个类的对象。

建造者模式:

建造步骤相同,实现不同,建造者挑几个建造步骤建造。

原型模式:

其实就是在类里面设一个返回自身指针的函数,进行浅复制。

结构型模式

适配器模式:


适配器继承原类,依赖要适配的类。

装饰模式:

一层套一层。

桥接模式:

面向接口编程,易扩充。

组合模式

叶子节点和分支节点。

享元模式

通过字典重复利用new出来的对象。

代理模式:

把本该本类处理的逻辑交给他的代理处理。

外观模式:

把同时调用多个对象的方法封装到一个类的某个方法里,通过调一个类的方法,实现多对象方法的调用。

行为型模式:

观察者模式
:观察者对象内保留被观察者对象的指针数组,通知时调用被观察对象的相应方法。

模板方法模式:

父类中定义函数的执行顺序,子类去实现这些函数。

命令模式:

在发令者和接受者之间加入命令类。发令者调用命令类的执行方法。命令类的执行方法调用接收者的执行方法。

状态模式:

状态类之间的转换有另一个类的一个方法来控制。哪种状态可以转换到那种状态是写死的。

职责链模式:

处理请求类里面保留着另一个处理请求类的指针。如果处理不了就直接交给另一个处理请求类。所有处理请求类继承于一个基类。

解释器模式:

遇到不同的的内容就用不用的类去处理(解释)。

中介者模式:

继承于同一个类的子类,通过调用中介者类的方法来相互调用各自的方法。

访问者模式:

某些类的子类是不易变动的,例如人类下的男人和女人类。定义一个操作类,子类是对上述类的各种操作。人类调用操作类,定义一个操作类,然后把自己传进去。从而实现了某些类与对其操作的分离。

策略模式:

所有的策略类继承于一个策略基类。再设定那个一个外部类。用于接收策略基类的指针。外部类设定一个函数用于访问策略类的固定的某个函数。使用时程序只需在初始化外部类时指定相应的测试子类。然后统一调用外部类的固定函数即可。

备忘录模式:

管理者类里有备忘录类里的对象。被管理类的对象有一个函数可以返回备忘录对象,主程序去除这对象放在管理者类的备忘录类的对象里,实现状态的保存。备忘录类里的字段可以根据要保存的状态动态设定。

迭代器模式:

设定一个数组的操作类,该类实现了迭代器接口(接口规定实现的方法有返回元素个数、第一个元素、下一个元素等)中的方法,从而更加方便的对数组进行操作。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: