下载此文档

合成聚合复用原则_刘邦VS韩信.pdf


文档分类:办公文档 | 页数:约8页 举报非法文档有奖
1/8
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/8 下载此文档
文档列表 文档介绍
《Android 之大话设计模式》本教程官方讨论群:65882321
合成聚合复用原则刘邦 VS 韩信
应用场景举例:
VS
一次,刘邦闲着没事,又想起了故人韩信,于是打开 QQ 想和韩信聊天,正巧韩信也
在,开始寒暄了几句,就在不自觉中进入严肃的问题,刘邦问:“韩兄觉得如果是我带兵,
最多能够带多少呢?”,韩信立即回复说:“十万”,刘邦心想本王竟然只能带十万,那你韩
信又能够带多少呢,于是暂时按捺了心中的郁闷,很客气的问道:“那请问韩兄最多能够带
多少呢”,韩信又立即回复道:“我啊,那自然是越多越好啦”,刘邦看到此言顿时大怒,而
且语气还极其的傲慢,还“啊,啦”的,刘邦心想:“虽然你韩信带兵打仗有道,天下皆知,
但是这样对本王说话也太过分了吧”,刘邦正要发飙,随即停了一下,深谙世道的刘邦问了
一句:“将军神勇盖世,带兵百万,却为何会在我领导下呢?”,刘邦想:“好你个韩信,叫
了你几声韩兄你就不知道自己是谁了,如果回答不上来,或是回答不好,看我如何收拾你!”,
等了大约三秒钟,QQ 闪了一下,只见上面赫然写道:“陛下虽不善统兵,却善御将”。刘邦
大悦!
定义:
positeAggregate Reuse Principle,简称为 CARP)经常又被人们
posite Reuse Principle,简称为 CRP).合成聚合复用原则是指在一个
新的对象中使用原来已经存在的一些对象,是这些原来已经存在的对象称为新对象的一部
分,新的对象通过向这些原来已经具有的对象委派相应的动作或者命令达到复用已有功能的
目的。
合成复用原则跟简洁的表述是:要尽量使用合成和聚合,尽量不要使用继承。
国士工作室电话:********** Email: guoshiandroid@
博客:shiandroid/ 版权所有,请保留
《Android 之大话设计模式》本教程官方讨论群:65882321
聚合(Aggregation)是关联关系的一种,用来表示一种整体和部分的拥有关系。整体持
有对部分的引用,可以调用部分的能够被访问的方法和属性等,当然这种访问往往是对接口
和抽象类的访问。作为部分可以可以同时被多个新的对象引用,同时为多个新的对象提供服
务。
position)也是关联关系的一种,但合成是一种比聚合强得多的一种关联关
系。在合成关系里面,部分和整体的生命周期是一样的。作为整体的新对象完全拥有对作为
部分的支配权,包括负责和支配部分的创建和销毁等,即要负责作为部分的内存的分配和内
存释放等。从这里也可以看出来,一个合成关系中的成员对象是不能喝另外的一个合成关系
共享的。
为何“要尽量使用合成和聚合,尽量不要使用继承”呢?这是因为:第一,继承复用破
坏包装,它把超类的实现细节直接暴露给了子类,这违背了信息隐藏的原则;第二:如果超
类发生了改变,那么子类也要发生相应的改变,这就直接导致了类与类之间的高耦合,不利
于类的扩展、复用、维护等,也带来了系统僵硬和脆弱的设计。而是用合成和聚合的时候新
对象和已有对象的交互往往是通过接口或者抽象类进行的,就可以很好的避免上面的不足,
而且这也可以让每一个新的类专注于实现自己的任务,符合单一职责原则。
聚合关系的示意图如下所示:

合成聚合复用原则_刘邦VS韩信 来自淘豆网m.daumloan.com转载请标明出处.

非法内容举报中心
文档信息
  • 页数8
  • 收藏数0 收藏
  • 顶次数0
  • 上传人翩仙妙玉
  • 文件大小0 KB
  • 时间2013-12-21
最近更新