设计模式图解

1、构建型

  • 简单工厂模式
    • 元素:工厂、抽象产品、具体产品
    • UML图
  • 工厂方法模式
    • 元素:抽象工厂、具体工厂、抽象产品、具体产品
  • 抽象工厂模式
    • 元素:抽象工厂、具体工厂、抽象产品、具体产品
    • 与工厂方法区别:工厂方法负责一个产品等级,抽象工厂负责同一族多个产品等级
    • 产品族:某一类产品,电冰箱是一族;产品等级:同一族产品的某一类,例如:海尔电冰箱是一个产品等级
  • build模式
    • 元素:指挥者、抽象建造者、具体建造者、具体产品、抽象产品
  • 单例模式
    • 元素:单例对象
    • 一个私有构造方法、自行创建、自己向外提供一个全局的

2、结构型

  • 适配器模式
    • 元素:Target:目标接口、Adaptor:适配器、Adaptee:实际接口
  • 桥接模式
    • 元素:Abstraction、Implementor、ConcreteImplementor、RefinedAbstraction
  • 代理模式
    • 元素:Client、Proxy、RealObject
  • 装饰模式
    • 元素:Component、ConcreteComponent、Decorator、ConcreteDecortor
  • 享元模式
    • 元素:FlyWeightFactory、FlyWeight、ConcreteFlyWeight
  • 外观模式
    • 元素:Facade、System

3、行为型

  • 中介模式
    • Mediator、Colleger、ConcreteColleger
  • 观察者模式
    • Subject、Observer、ConcreteObserver
  • 命令模式
    • client、Receiver、Command/ConcreteCommand、Invoker
  • 状态模式
    • Context、State、ConcreteState
  • 策略模式
    • Context、Strategy、ConcreteStrategy