写点什么

组合模式

用户头像
关注
发布于: 2020 年 09 月 14 日

依赖注入是符合控制反转的一种框架

组合模式的优缺点

优点:

  • 组合模式使得客户端代码可以一致地处理对象和对象容器,无需关系处理的单个对象,还是组合的对象容器。

  • 将”客户代码与复杂的对象容器结构“解耦。

  • 可以更容易地往组合对象中加入新的构件。

缺点: 使得设计更加复杂。客户端需要花更多时间理清类之间的层次关系。(这个是几乎所有设计模式所面临的问题)。

注意的问题:

  • 有时候系统需要遍历一个树枝结构的子构件很多次,这时候可以考虑把遍历子构件的结构存储在父构件里面作为缓存。

  • 客户端尽量不要直接调用树叶类中的方法(在我上面实现就是这样的,创建的是一个树枝的具体对象;),而是借用其父类(Graphics)的多态性完成调用,这样可以增加代码的复用性。

组合模式的使用场景

在以下情况下应该考虑使用组合模式:

  1. 当想表达对象的部分-整体的层次结构时。

  2. 希望用户忽略组合对象与单个对象的不同,用户将统一地使用组合结构中的所有对象时。

组合模式的使用场景

在以下情况下应该考虑使用组合模式:

  1. 当想表达对象的部分-整体的层次结构时。

  2. 希望用户忽略组合对象与单个对象的不同,用户将统一地使用组合结构中的所有对象时。



用户头像

关注

everything will be alright 2020.04.06 加入

还未添加个人简介

评论

发布
暂无评论
组合模式