23种设计模式概况


一、设计模式的要点

寻找变化点,然后在变化点处应用设计模式,从而来更好地应对需求的变化。

二、重构关键技法

  • 静态->动态
  • 早绑定->晚绑定
  • 继承->组合
  • 编译时依赖->运行时依赖
  • 紧耦合->松耦合

三、模式分类

1.从目的来看

  • 创建型(Creational)模式:5种
    工厂方法模式、抽象工厂模式、单例模式、建造者模式、原型模式。
  • 结构型(Structural)模式:7种
    适配器模式、装饰器模式、代理模式、外观模式、桥接模式、组合模式、享元模式。
  • 行为型(Behavioral)模式:11种
    策略模式、模板方法模式、观察者模式、迭代子模式、责任链模式、命令模式、备忘录模式、状态模式、访问者模式、中介者模式、解释器模式。

2.从范围(实现手段)来看

  • 类模式处理类与子类的静态关系。(偏继承方案)
  • 对象模式处理对象间的动态关系。(偏组合方案)

3.从封装变化角度来看

  • 组件协作(通过晚期绑定,来实现框架与应用程序之间的松耦合,是二者间协作时常用的模式)
    • Template Method
    • Strategy
    • Observer / Event
  • 单一职责(类与类之间的责任划分问题)
    • Decorator
    • Bridge
  • 对象创建
    • Factory Method
    • Abstract Factory
    • Prototype
    • Builder
  • 对象性能
    • Singleton
    • Flyweight
  • 接口隔离
    • Facade
    • Proxy
    • Mediator
    • Adapter
  • 状态变化
    • Memento
    • State
  • 数据结构
    • Composite
    • Iterator
    • Chain of Resposibility
  • 行为变化
    • Command
    • Visitor
  • 领域问题
    • Interpreter

猜你喜欢

转载自blog.csdn.net/Sakura_Jun/article/details/85166378