李子默

Bugslayer

常见设计模式梳理

2019-07-16 Azriel设计模式

策略模式

定义了算法族,分别封装起来,让他们之间可以相互替换,此模式让算法的变化独立于使用算法的客户。

观察者模式

即发布/订阅。

装饰者模式

扩展对象的能力。

工厂模式

由子类决定产生的对象类型。

单件模式

只能有一个对象的类。

命令模式

把请求封装成对象,以便使用不同的请求、队列或者日志来参数化其他对象。支持撤销。

适配器与外观模式

适配器: 更改原有接口使其可用。 外观:简化已有的一堆接口,使调用简单化。

模板方法模式

使子类有能力更改算法的局部实现。

迭代器与组合模式

提供统一的便利集合的方法。

状态模式

将一个小系统内部的状态封装成对象,在所有状态对象上实现状态变更方法。

代理模式

控制对象的访问权限和方式。