面向对象的SOLID原则
-
S - 单一责任原则
-
O - 开闭原理
-
L - Liskov替代原理
-
I - 接口隔离原理
-
D - 依赖倒置原则
单一责任原则
一个类有且只能有一个因素使其改变,意思是一个类只应该有单一职责.
即一个class完成一件事情
开闭原理
对象和实体应该对扩展开放,但是对修改关闭。
如果一个类需要做多个事情,此时我们就可以通过继承来实现,这就是开闭原理,即可以继承不可以修改。
Liskov替代原理
如果对每一个类型为 T1 的对象 o1,都有类型为 T2 的对象 o2,使得以 T1 定义的所有程序 P 在所有的对象 o1 都代换成 o2 时,程序 P 的行为没有发生变化,那么类型 T2 是类型 T1 的子类型
也就是说子类不能修改基类的逻辑,比如基类能run,那子类也能run
接口隔离原理
使用方(client)不应该依赖强制实现不使用的接口,或不应该依赖不使用的方法。
其实也是接口最小化原则,比如路和人都需要用车,但是我们不能创建一个接口来实现他们都能用车,而是应该分别用两个接口。
依赖倒置原则
实体必须依赖于抽象而不依赖于具体。它指出高级模块一定不能依赖于低级模块,而应该依赖于抽象。