合成聚合复用原则(CARP)
2010-07-13 09:32
162 查看
合成聚合复用原则就是在一个新的对象里面使用一些已经有的对象,使之成为新对象的一部分;新对象通过向这些对象的委派达到复用已有功能的目的。 合成和聚合的区别:它们均是关联的特殊种类,聚合用来表示“拥有”关系或者整体与部分的关系;而合成则用来表示一种强烈的拥有关系。 复用的基本种类: 合成/聚合复用:新对象存取成分对象的唯一方法是通过成分对象的接口。这种复用是黑箱复用,成分对象的细节看不到。而且这种复用是支持包装的。弱点:会有较多的对象被管理。 通过继承:这里讨论的继承是实现继承。优点:新的实现比较容易,超类的大部分功能可以移植到子类。缺点:破坏了包装,因为将超类的实现细节暴露给了子类,是白箱复用。子类的实现随超类的改变而变。从超类继承而来的实现是静态的,不可能在运行时发生改变,所以灵活性不强。 对于违反里氏代换原则的设计进行重构时可以采取两个办法:加入一个抽象类,或者改写成合成聚合关系。当一个类似另一个类的角色时,不应当使用继承这种描述关系。
相关文章推荐
- CARP(Composition/Aggregation Reuse Principle)合成/聚合复用原则
- 桥接模式(Bridge)与合成/聚合复用原则(CARP)
- 设计模式六大原则——合成/聚合复用原则(CARP)
- 桥接模式(Bridge)与合成/聚合复用原则(CARP)
- OOD设计原则之合成/聚合复用原则(CARP)
- 《java与模式》读书笔记5----接口隔离原则(ISP)和合成/聚合复用原则(CARP)
- 合成/聚合复用原则(CARP)
- 桥接模式(Bridge)与合成/聚合复用原则(CARP)
- 《设计模式》-原则五:合成/聚合复用原则(CARP)
- 合成/聚合复用原则(CARP)
- 桥接模式(Bridge)与合成/聚合复用原则(CARP)
- 合成/聚合复用原则(CARP)
- 软件设计原则----合成/聚合复用原则(CARP)
- 设计模式(六)接口隔离原则(DIP)和合成/聚合复用原则(CARP)
- 软件设计原则----合成/聚合复用原则(CARP)http://blog.csdn.net/beyondhaven/article/details/6906050
- 设计模式六大原则——合成/聚合复用原则(CARP)
- 合成/聚合复用原则 (Composition/Aggregation Principle, CARP)
- 软件设计原则----合成/聚合复用原则(CARP)
- 软件设计原则(七)合成/聚合复用原则(Composite/Aggregate Reuse Principle,CARP)
- 设计原则(6)-合成聚合复用原则