什么是GOF

1994年,Gang of Four(四个人)出版了设计模式一书,核心思想基于以下两点:

  1. 对接口编程而非对实现编程
  2. 优先使用对象组合而非继承

设计模式的类型

创建型

  1. 工厂
  2. 抽象工厂
  3. 单例
  4. 建造者
  5. 原型

结构型

  1. 适配器
  2. 桥接
  3. 过滤器
  4. 组合
  5. 装饰器
  6. 外观
  7. 享元
  8. 代理

行为型

  1. 责任链
  2. 命令
  3. 解释器
  4. 迭代器
  5. 中介
  6. 备忘录
  7. 观察者
  8. 策略
  9. 访问者

设计模式的六大原则

1.开闭原则,需要使用接口和抽象类 2.里氏代换原则,Liskov Substitution Principle,将父类设计为抽象或接口 3.依赖倒转原则,针对接口编程,这是开闭原则的基础 4.接口隔离原则,降低类的耦合度 5.最少知道原则,尽量少与其他实体类发生相互作用 6.合成复用原则,尽量使用合成/聚合,而非继承