接口隔离原则:
一个类对另一个类的依赖应该建立在最小的接口上,应该要最小化接口,使得所有实现接口的类完全实现接口中的函数
合成复用原则:
如果想要实现一个新类,最好是基于原有类的api进行扩展,而不是选择继承这种方式破坏基类的封闭性
迪米特法则:
愚民政策,老死不相往来,每个模块之间单线联系,出了事只会断掉一环而不是全局。对象之间的调用仅限于对方在逻辑上与自身有之间关系
单一职责法则:
一个模块只完成一项任务,实现高内聚,可以提高模块的可移植性和重用性
开闭原则:
对拓展开放,对修改关闭,比较玄学。
里氏代换原则:
任何时候,子类都是对父类的拓展和补充,能够以父类为参数的接口、函数都能使用子类替换。
依赖倒转原则:
上层抽象决定具体实现,常与里氏代换原则结合使用