您的位置:首页 > 其它

19章 组合模式 读后感

2008-03-12 21:42 176 查看
这么一个模式,花了好几天时间才终于看下来,只是心里还不是很明白,不是很透,算是有点入门这个模式吧!哎!

大话里是以一个公司中结构图来说明这么一个模式!而在张逸老师的设计模式精要里是以一个字处理软件来说明

主要在讲三种想法:一种是安全的,一种是透明的,一种是复合的,当然,从自身来说,复合是最好的,但需求环境不同,最好用的才是最好的

也就是那么一句地球人都知道的话:

将对象组合成树形结构以表示"部分-整体"的层次结构.组合模式使得用户对单个对象和组合对象的使用具有一致性

也就是一起使用啦!就像一种容量里面的小容器里面还有着小容量

但是具体的应用场合,回想做过的项目,却想不出可以套着用的!不过有个小想法,说说看,希望能讨论下

我有个TREEVIEW控件,里面有一些树型节点!同一级的每个节点或许是不同对象,也有可能是同一对象,可节点的子结点,也同样道理

就好比吧!我有一个

通讯录,IM结点,公司系统

通讯录底下是各个办公室,IM结点下是各个IM,有MSN,QQ,SKYPE等等,公司系统里有一些公司办公的相应结点

然后每个结点下又可以再细分

在这时候,可以用到这个模式吗

嘿嘿!这只是一个愚想法!也给自已做个记号吧,什么情影才可以用到这么一个模式呢!

用大话里的话来说吧!用户是不用关心是处理一个节点,还是处理一个组合对象,也就用不着为定义组合与一些选择判官语句了,简点说就是让客户可以致地让客户可以一致使用组合结构,和单个对象..

至此,我觉得我上面那个想法是多的

而在张逸老师的<精要>里提到的复合式COMPOSITE方式是最吸引人的,并不是这个模式多么重要,而是通过他的介绍懂了一点.NET控件设计的组织方式

把对象间的操作给独立出来,让另外的一个类,一个COLLECTION来管理,将管理子控件的属性和行国与控件本身分开,并交由单独的ControlCoLlection类负责

而其具体的功能则是通过多态,将其各子对象赋予其CONTROL属性,实在是暗爽到内伤的做法啊

理解了一点,只是在什么场合用,还得以后多注意一下

一句话吧!在一个有树型结构的对象关系图中,可以思考下
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: