1.开闭原则:
是指一个软件实体如类,模块及函数应该对扩展开放对修改关闭。
2.依赖导致原则:
是指设计代码结构时,高层代码不应该依赖底层模块,二者都应该依赖其抽象。
备注:以抽象为基准的架构比细节为基准的架构要稳定的多,所以我们拿到需求之后,要面向接口编程,先顶层再细节来设计代码结构。
3.单一职责原则:
是指不要存在多于一个导致类变更的原因。
(字面意思)
4.接口隔离原则:
是指用多个专门的接口,而不是用一个总接口,客户端不应该依赖它不需要的接口。
5.迪米特原则:
是指一个对象应该对其他对象保持最少了解,又叫最少知道原则,尽量降低类与类之间的耦合。
6.里式替换原则:
是指如果对每一个类型为 T1 的对象 o1,都有类型为 T2 的对象 o2,使得以 T1 定义的所有程序 P 在所有的对象 o1 都替换成o2 时,程序 P 的行为没有发生变化,那么类型 T2 是类型 T1 的子类型
(可以理解为一个软件实体如果适用一个父类的话,那一定是适用于其子类,所有引用父类的地方必须能透明地使用其子类的对象,子类对象能够替换父类对象,而程序逻辑不变)
7.合成复用原则:
是指尽量使用对象组合/聚合,而不是继承关系达到复用的目的。
总结:在设计开发中,并不是一定要求所有代码都遵循设计原则,我们要考虑,人力,成本,时间,质量并不刻意准求完美,要在适当的场景遵循设计原则,体现的是一种平衡取舍,帮助我们设计出更加优雅的代码质量。
网友评论