1-依赖倒置原则(DIP)
a, 高层模块(稳定)不应该依赖底层模块(变化),二者都应该依赖抽象(稳定)。
b, 抽象(稳定)不应该依赖于实现细节(变化),实现细节应该抽象(稳定)。
2-开放封闭原则(OCP)
a, 对扩张开放,对更改封闭。
b, 类模块应该是可扩展的,但不可修改。
3-单一职责原则
a, 一个类应该仅有一个引起它变化的原因。
b, 变化的方向隐含着类的责任。
4-Liskov替换原则
a, 子类必须能够替换他们的基类(IS-A)。
b, 继承表达类型抽象。
5-接口隔离原则(ISP)
a️️, 不应该强迫客户程序依赖它们不用的方法。
b, 接口应该小而完备。
6-优先使用对象组合,而不是继承
a, 继承通常为“白箱复用”,对象组合常为“黑盒复用”。
b, 继承破坏了对象的复用性,子类父类是紧耦合。
c, 对象的组合只需要组合对象有良好的接口定义,耦合度低。
7-封装变化点
8-针对接口编程,而不是针对实现编程
a, 不将变量类型声明为具体类型,而是声明为抽象类型。
网友评论