设计模式(一)-简要概述(2)
部分总结内容以及对应设计模式的链接,待更新中。。。
(1)创建者模式:
特点:将对象的创建和使用分离。
对象创建的过程不在客户端(使用对象的调用者)里处理,所以客户端不需要关注对象创建的细节。当对象创建的过程有变化,则不会对客户端的代码逻辑有影响。
优点: 降低系统的耦合度。
共有5种:
- 单例模式(Singleton Pattern)
- 简单工厂模式(不属于设计模式,只是其他设计模式的基础)
- 工厂模式(Factory Pattern)
- 抽象工厂模式(Abstract Factory Pattern)
- 原型模式(Prototype Pattern)
- 建造者模式(Builder Pattern)
(2)结构型模式
特点:将类(或对象)按照某种结构进行组合,主要关注是类或对象之间的结构。
分为两种类型:
1)类结构型模式:通过继承机制进行组合来实现功能。
2 )对象结构型模式:通过组合对象的方式实现功能。
共7种:
- 适配器模式(Adapter Pattern)
- 桥接模式(Bridge Pattern)
- 过滤器模式(Filter、Criteria Pattern)
- 组合模式(Composite Pattern)
- 装饰器模式(Decorator Pattern)
- 外观模式(Facade Pattern)
- 享元模式(Flyweight Pattern)
- 代理模式(Proxy Pattern
(3)行为型模式
特点:类(或对象)之间的协同通信,主要关注是算法的控制。
当单个对象难以完成复杂的算法逻辑时,这时就需要多个类或对象之间进行组合来共同完成这一复杂的任务。
分为两种类型:
1)类行为模式:通过继承关系在类与类之间分配行为。
2)对象行为模式:通过对象组合的方式分配行为。
共11种:
- 责任链模式(Chain of Responsibility Pattern)
- 命令模式(Command Pattern)
- 解释器模式(Interpreter Pattern)
- 迭代器模式(Iterator Pattern)
- 中介者模式(Mediator Pattern)
- 备忘录模式(Memento Pattern)
- 观察者模式(Observer Pattern)
- 状态模式(State Pattern)
- 空对象模式(Null Object Pattern)
- 策略模式(Strategy Pattern)
- 模板模式(Template Pattern)
- 访问者模式(Visitor Pattern)