组合模式
组合模式
- 将对象组合成树形结构以表示“部分-整体”的层次结构。组合使得用户对单个对象和组合对象的使用具有一致性。
- 常见场景: 文件目录
代码实现
- 组合对象和叶子对象并不是父子关系,而是组合关系
- 实现时,我们会将组合对象类
Composite
或者叶子对象类Leaf
继承于同一个抽象类Component
1 | abstract class Component { |
1 | abstract class TreeBase { |
参考链接
- https://www.jianshu.com/p/a6e236040505
- https://segmentfault.com/a/1190000019773556
- https://github.com/tcorral/Design-Patterns-in-Javascript
- https://www.runoob.com/design-pattern/composite-pattern.html
- https://www.cnblogs.com/TomXu/archive/2012/04/12/2435530.html
- https://github.com/sohamkamani/javascript-design-patterns-for-humans#-composite
- https://xhui.top/2018/12/20/JS%E8%AE%BE%E8%AE%A1%E6%A8%A1%E5%BC%8F-8-%E7%BB%84%E5%90%88%E6%A8%A1%E5%BC%8F/
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 LiuYuanhua!
评论