美文网首页
结构型模式-组合模式

结构型模式-组合模式

作者: 查无此人_chazz | 来源:发表于2018-05-17 01:09 被阅读0次

标签(空格分隔):组合模式 透明方式 安全方式


组合模式: 将对象组合成树形结构,以表示整体-部分的结构, 使得用户对单个对象和组合对象的使用具有一致性

组合模式的应用比较常见与带有组织架构的地方,特别在那些希望忽略是由这个整体中哪个部分来完成自己期望任务的时候使用。例如:我们去生病了,需要去医院,但是不知道自己的病症要到哪个部门去检查和治疗,我们只需要关心将自己的病治好,这个时候医院可以看作一个组合模式;医院由各个部门组合而成,病人在看病前并不需要关心自己需要去哪,只需要知道自己去医院治病即可。

组合模式主要解决:模糊了简单元素和复杂元素的概念,客户程序可以向处理简单元素一样来处理复杂元素,从而使得客户程序与复杂元素的内部结构解耦。

优点:调用模块简单,处理一个元素和处理多个元素函数是一样的。多个元素被组合成这一个元素来执行。

树结构的实现方式有两种:

  • 透明模式:根节点和叶子节点被认为是相同的,都提供“ADD”,"REMOVE"方法,但是这两个方法对叶子节点几乎没有作用(但是也不能避免在叶子节点增加新叶子节点)。由于这种方式生成的树,所有节点都拥有ADD/REMOVE方法,外界有必要的可以直接使用。
  • 安全模式:根节点和叶子节点被被认为是相同的,但是不都提供“ADD”,"REMOVE"方法,这种情况下生成的组合树,对于调用者来说只有根节点可以获取和调用。这种方式生成的树透明性差,但是也变相增加了这种组合树的安全。

相关文章

  • 设计模式分类汇总

    结构型 适配器模式 组合模式 桥接模式 代理模式 装饰者模式 门面模式 享元模式 行为型 责任链模式 命令模式 解...

  • 设计模式:组合模式 职责链模式

    组合模式 职责链模式 组合模式 组合模式将对象组合成树形结构,以表示“部分-整体”的层次结构。 在组合模式的树形结...

  • 结构型模式:组合模式

    文章首发:结构型模式:组合模式 七大结构型模式之三:组合模式。 简介 姓名 :组合模式 英文名 :Composit...

  • 设计模式笔记(10)--组合模式

    组合模式--类似树结构 GOF对组合模式的定义是:“将对象组合成树形结构以表示“部分-整体”的层次结构。”组合模式...

  • java23种设计模式

    创建型 抽象工厂模式工厂方法建造者模式原型模式单态模式 结构型 适配器模式桥接模式组合模式外观模式装饰者模式享元模...

  • 结构型模式:09-组合模式

    透明组合模式的完整结构 安全组合模式的完整结构

  • 组合模式

    设计模式之组合模式 什么是组合模式? 组合模式允许你将对象组合成树形结构来表现”部分-整体“的层次结构,使得客户以...

  • 组合模式

    模式定义 将对象组合成树型结构以表示“部分-整体”的层次结构。组合模式使得用户对单个对象和组合对象的使用具有一致性...

  • JavaScript设计模式 | 14-组合模式

    1、模式定义 组合模式,又称“部分-整体”模式,把对象组合成树形结构,以表示出“部分-整体”的层次结构。组合模式,...

  • 2022-03-16

    组合模式 应用场景 整体与部分的结构特征相似,数据以树型的层次结构表达。例如文件系统、树等 透明式的组合模式安全式...

网友评论

      本文标题:结构型模式-组合模式

      本文链接:https://www.haomeiwen.com/subject/dhsvdftx.html