设计原则的作用是什么
编写高质量、易维护的代码。
目录
- 单一职责原则(SRP)
- 开闭原则(OCP)
- 里氏替换原则(LSP)
- 接口隔离原则(ISP)
- 依赖倒置原则(DIP)
- 迪米特法则(LoD)
- 合成复用原则(CRP)
单一职责原则(SRP)
对于一个模块来说,应该只复杂一个单一的部分,确保在对模块进行改动时不会对其他的部分产生影响
开闭原则(OCP)
在编写模块时,应该保证其是对拓展开放,对修改关闭的。就是尽量避免编写在将来可能引起冲突的代码。
里氏替换原则(LSP)
里氏代换原则中说,任何基类可以出现的地方,子类一定可以出现。里氏替换原则是为了规范类与类间的继承关系,只有用基类替换衍生类而不出错时,基类才算真正的被复用,而衍生类也仅仅是对基类的拓展。
接口隔离原则(ISP)
接口隔离原则是指在定义接口时,应该保证接口的粒度尽可能小,避免将不必要的方法放在同一个接口中。这样可以减少客户端需要实现的方法数量,从而降低耦合性。
依赖倒置原则(DIP)
依赖倒置原则是指高层模块不应该直接依赖于低层模块,而应该依赖于抽象接口。也就是说,依赖关系应该是通过接口(抽象)来建立的,而不是通过具体实现来建立的。
迪米特法则(LoD)
迪米特法则也称为最少知识原则,是指一个软件实体应当尽可能少地与其他实体发生相互作用,使得系统中的各个部分相对独立,降低耦合性。
合成复用原则(CRP)
合成复用原则是指在设计模块时,应该优先使用组合或聚合关系,而不是继承关系。这样可以避免因为继承而导致的类之间的紧耦合关系,提高代码的可维护性和复用性。