某绘图软件,能绘制点、线、面等简单几何形体。
同时也能将这些简单形体组合成更复杂的图形。
以下是该软件的设计:

说明:
1.这棵对象树中的所有节点,都被抽象成Component。
2.如果节点能包含节点,这些节点就是Container。
3.如果节点不能再包含节点,这些节点就是Leaf。
4.Component定义了Container和Leaf的通用方法,实际上Container和Leaf是有差异的,为了保持一致性,Leaf中不可避免地有一些无用方法(如Add,GetChild,Remove),这是组合模式的一个缺点。
请看下一文……
创新工场创业课堂(敏捷课程)讲师
软件研发管理资深顾问
CMMI首席专家
www.umlonline.org创办人
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!