设计原则

提高一个软件系统的可维护性和可复用性
一:单一职责原则:一个类只负责一个功能领域原则
二:接口隔离原则:使用多个专门接口,不使用单一的总接口。
三:开闭原则:对扩展开放,对修改关闭。
四:依赖倒转原则:细节依赖于抽象,而抽象不应该依赖于细节
五:合成复用原则:尽量使用组合达到复用,避免使用继承实现复用。
原理:
(1)通过继承来进行复用的主要问题在于继承复用会破坏系统的封装性,因为继承会将基类的实现细节暴露给子类,由于基类的内部细节通常对子类来说是可见的,如果基类发生改变,那么子类的实现也不得不发生改变;
(2)由于组合或聚合关系可以将已有的对象(也可称为成员对象)纳入到新对象中,使之成为新对象的一部分,因此新对象可以调用已有对象的功能,这样做可以使得成员对象的内部实现细节对于新对象不可见,相对继承关系而言,其耦合度相对较低,成员对象的变化对新对象的影响不大。
(3)如果两个类之间是“Has-A”的关系应使用组合,如果是“Is-A”关系可使用继承。
六:里氏代换原则 : 所有使用基类的地方,可以透明的使用子类来替代。
七:迪米特原则:一个软件实体应该金可能的与其他软件实体相互作用。
迪米特法则可降低系统的耦合度,使类与类之间保持松散的耦合关系。应该尽量减少对象之间的交互,如果两个对象之间不必彼此直接通信,那么这两个对象就不应当发生任何直接的相互作用,如果其中的一个对象需要调用另一个对象的某一个方法的话,可以通过第三者转发这个调用。

你可能感兴趣的:(设计原则)