1、开闭原则
2、接口隔离原则
3、依赖倒置原则
4、迪米特原则
5、里氏替换原则
6、单一职责原则
单一职责原则
针对的问题
类T负责两个不同职责:职责P1和职责P2。当业务发生改变需要修改职责P1,有可能会影响到职责P2的功能。
解决方案
遵循单一职责原则,分别创建两个类:类T1和类T2。类T1负责职责P1的功能,类T2负责职责P2的功能。这样当修改P1代码的时候就不会影响到P2的功能了。
拆分后代码量会增加,理解成本也会增加,什么时候适合使用单一职责原则呢?
如果类型足够简单,方法够少,是可以在类级别去违背单一职责,如果类型复杂,方法多,建议遵循单一职责原则。
不同级别中使用的单一职责原则:
方法级别:一个方法只负责一件事。
类级别:一个类只负责一件事。
类库级别:一个类库应该职责清晰。
项目级别:一个项目应该职责清晰,比如:客户端、管理后台、后台服务、定时任务、分布式引擎等不要放在一个项目中,应该拆分。
系统级别:为通用功能拆分,比如IP定位、日志、在线统计等等。拆分后不仅能保证系统的稳定性还能提高开发效率。