书城计算机大话设计模式
11030400000033

第33章 2 组合模式

时间:12月19日地点:大B房间人物:大B,小。

大B的MM十分之聪明地运用了组合模式,将3件礼物“合成”至1件(套),从而让大B以买一件礼物的方式(反正大B只要付一次钱~)买了3件礼物。由此不难看出,组合模式将对象以树形结构组织起来,以达到“部分-整体”的层次结构,使得客户(钱包瘪瘪的大B)对单个对象和组合对象(1件vs1套)的使用具有一致性(付一次钱)。

大B:“你知道什么是组合模式吗?”

小A:“嗯,将对象组合成树形结构以表示‘部分-整体’的层次结构。组合模式使得用户对单个对象和组合对象的使用具有一致性。”

大B:“组合模式(又为‘部分-整体’模式)屏蔽了容器对象与单个对象在使用时的差异,为客户端提供统一的操作接口,从而降低客户代码与被调用对象的耦合关系,方便系统的维护与扩展。”