单一职责原则
按照单一职责的原则,根据个人经验、具体的业务逻辑对类、函数进行划分。
开闭原则
类对于扩展是开放的,对于修改是封闭的。
当软件需要变化时,应尽量通过扩展的方式实现,而不是通过修改已有代码的方式实现。
里氏替换原则
所有引用基类的地方都能使用其子类。
使用抽象和继承的特性,即可实现该原则。
依赖倒置原则
高层次模块(调用端)不依赖于低层次模块(具体实现类)的实现细节。
模块间的依赖关系通过抽象发生,实现类之间不直接发生依赖关系,也就是面向接口编程。
典型例子就是 MVP 架构模式中,View 和 Presenter 之间的依赖通过接口调用产生。
接口隔离原则
客户端(调用端)不应该依赖于不需要的接口。
类间的依赖关系应该建立在最小(最基础)的接口上。
迪米特原则
一个对象应该对其他对象有最少的了解。