合成复用原则

继承关系的选择

继承关系是is a的关系,所以看是否有继承关系,通常要看子类和父类共用的方法,子类是否能够实现父类的方法

起名

合成复用原则,组合复用原则,聚合复用原则

定义

尽量使用组合,聚合,而不是继承关系达到复用软件的目的

组合聚合(黑箱复用)

  • 优点
    降低耦合,提高系统的灵活性。使一个类的变化对其他类造成的影响较小
  • 缺点
    会生成较多的对象进行管理

继承(白箱复用)

  • 优点
    新的扩展性容易实现,修改和扩展相对容易

  • 缺点
    父类的方法侵入性的带给子类,父类方法的改变,子类也必须改变,相比耦合较高

组合聚合区别

关系强弱,组合强,聚合弱