概述

结构型模式主要涉及如何组合各种对象以便获得更好、更灵活的结构。虽然面向对象的继承机制提供了最基本的子类扩展父类的功能,但结构型模式不仅仅简单地使用继承,而更多地通过组合与运行期的动态组合来实现更灵活的功能。

结构型模式又可以分为类结构型模式和对象结构型模式,前者采用继承机制来组织接口和类,后者采用组合或聚合来组合对象。由于组合关系比继承关系耦合度低,满足“合成服用原则”,所以大多数结构型模式都采用对象结构型模式,因为它比类结构型模式具有更大的灵活性。

结构型模式分为以下 7 种:

  1. 适配器模式(Adapter Pattern)
  2. 桥接模式(Bridge Pattern)
  3. 装饰器模式(Decorator Pattern)
  4. 组合模式(Composite Pattern)
  5. 外观模式(Facade Pattern)
  6. 享元模式(Flyweight Pattern)
  7. 代理模式(Proxy Pattern)