书中4.3节是COMPOSITE模式,下面是书中给的类结构图:

并告诉我们说这是递归组合。
而书中给的例子并不好理解。在我看来,COMPOSITE模式就是组合对象和单个对象的类继承自同一个基类。比如说,CPU、主板、内存、声卡、显卡都是是电脑设备,而它们组合在一起的电脑主机也是电脑设备,主机和显示器组合成的电脑也是电脑设备。它们的基类都是一个--电脑设备类。
这样做的好处就是:用户可以统一的使用组合结构中的所有对象,并且可以更容易的增加新类型的组件。比如我给电脑新添加了一个摄像头,用户可以像使用其他电脑设备一样的使用,如果他不用摄像头的话,那他的程序就不用改变。
本文通过具体实例解释了组合模式(COMPOSITE)的概念及其应用价值。在软件设计中,组合模式允许客户端一致地处理个体对象和组合对象,使得增加新的组件类型变得更为简单。
1382

被折叠的 条评论
为什么被折叠?



