跳至主要內容

组合模式

微信公众号:储凡2023/11/29大约 4 分钟

组合模式

组合模式Composite Pattern又叫部分整体模式,是用于把一组相似的对象当作一个单一的对象,通常依据树形结构来组合对象,用来表示部分以及整体层次,这种类型的设计模式属于结构型模式,它创建了对象组的树形结构。

基本介绍

在软件工程中,组合模式是一种分区设计模式,组合模式描述了将以与对象的单个实例相同的方式对待一组对象,组合的目的是将对象组成树状结构,以表示整个部分的层次结构。即将对象组合成树形结构以表示部分-整体的层次结构,使得用户对单个对象和组合对象的使用具有一致性,通常用于树形菜单、文件、文件夹、表单的管理等。

优点

  • 高层模块调用简单。
  • 节点自由增加。
  • 忽略组合对象和单个对象的差别,对外一致接口使用。

缺点

  • 树叶对象接口一致,无法区分,只有在运行时方可辨别。
  • 包裹对象创建太多,额外增加内存负担。
  • 在使用组合模式时,其叶子和树枝的声明都是实现类而不是接口,违反了依赖倒置原则。

代码实现

更新日志

2024/7/28 18:06
查看所有更新日志
  • c0f2d-refactor: 升级vuepress相关版本,优化项目结构 (#137)
  • e6a79-feat: 大幅新增设计模式、Linux命令、ORM框架教程文档