如何运用组合模式实现复杂系统的长尾设计?
- 内容介绍
- 文章标签
- 相关推荐
本文共计2390个文字,预计阅读时间需要10分钟。
前言+组合模式,英文称呼是:Composite Pattern。当我们讨论这个模式时,有一个物品和这个模式非常相似,也符合这个模式要表达的思想,那就是俄罗斯套娃。俄罗斯套娃就是套娃一个套一个,每个套娃都包含着比它小的下一个套娃,这与组合模式的层级结构和包含关系非常相似。
前言
组合模式,英文名称是:Composite Pattern。当我们谈到这个模式的时候,有一个物件和这个模式很像,也符合这个模式要表达的意思,那就是“俄罗斯套娃”。“俄罗斯套娃”就是大的瓷器娃娃里面装着一个小的瓷器娃娃,小的瓷器娃娃里面再装着更小的瓷器娃娃,直到最后一个不能再装更小的瓷器娃娃的那个瓷器娃娃为止。在我们的操作系统中有文件夹的概念,文件夹可以包含文件夹,可以嵌套多层,最里面包含的是文件,这个概念和“俄罗斯套娃”很像。
组合模式的定义
客户代码过多地依赖于对象容器复杂的内部实现结构,对象容器内部实现结构的变化将引起客户代码的频繁变化,带来了代码的维护性、扩展性等方面的弊端。组合设计模式就是将对象组合成树形结构以表示“部分-整体”的层次结构。Composite使得用户对单个对象和组合对象的使用具有一致性。
组合模式的组成
- 抽象构件角色(Component):这是个抽象角色,它给参加组合的对象定义出了公共的接口及默认行为,可以用来管理所有的子对象。
本文共计2390个文字,预计阅读时间需要10分钟。
前言+组合模式,英文称呼是:Composite Pattern。当我们讨论这个模式时,有一个物品和这个模式非常相似,也符合这个模式要表达的思想,那就是俄罗斯套娃。俄罗斯套娃就是套娃一个套一个,每个套娃都包含着比它小的下一个套娃,这与组合模式的层级结构和包含关系非常相似。
前言
组合模式,英文名称是:Composite Pattern。当我们谈到这个模式的时候,有一个物件和这个模式很像,也符合这个模式要表达的意思,那就是“俄罗斯套娃”。“俄罗斯套娃”就是大的瓷器娃娃里面装着一个小的瓷器娃娃,小的瓷器娃娃里面再装着更小的瓷器娃娃,直到最后一个不能再装更小的瓷器娃娃的那个瓷器娃娃为止。在我们的操作系统中有文件夹的概念,文件夹可以包含文件夹,可以嵌套多层,最里面包含的是文件,这个概念和“俄罗斯套娃”很像。
组合模式的定义
客户代码过多地依赖于对象容器复杂的内部实现结构,对象容器内部实现结构的变化将引起客户代码的频繁变化,带来了代码的维护性、扩展性等方面的弊端。组合设计模式就是将对象组合成树形结构以表示“部分-整体”的层次结构。Composite使得用户对单个对象和组合对象的使用具有一致性。
组合模式的组成
- 抽象构件角色(Component):这是个抽象角色,它给参加组合的对象定义出了公共的接口及默认行为,可以用来管理所有的子对象。

