Composite Pattern
04 Mar 2019组合模式
将对象组合到树结构中以表示部分-整体层次结构。Composite允许客户端统一地处理单个对象和对象的组合。
抽象出枝节点和叶节点的统一的行为接口,让client端可以对他们一视同仁,简化操作。
何时使用
- 需求中是体现部分和整体层次结构时;
- 希望用户可以忽略组合对象与单个对象的不同,统一使用组合结构中的所有对象时;
- 想要分发什么东西到对象时。
优点
- 基本对象可悲组合为更复杂的组合对象,用到基本对象的地方都可以使用组合对象;
- 用户不用关心到底是处理叶节点还是一个组合组件,也不用为定义组合而写一些判断语句。即客户可以一致地使用组合结构和单个对象。