00 设计模式原则
coderzhouyu
单一原则(Single Responsibility Principle)
一个类只负责一项职责,尽量做到类只有一个行为原因引起变化; 业务对象(BO business object)、业务逻辑(BL business logic)拆分
里氏替换原则(LSP liskov substitution principle)
子类可以替换父类 因为子类可以扩展父类的功能,但不能改变原有父类的功能; 目的:增强程序的健壮性。实际项目中,每个子类对应不同的业务含义,使父类作为参数,传递不同的子类完成不同的业务逻辑。
依赖倒置原则(dependence inversion principle)
依赖于抽象而不依赖于具体。
面向接口编程;(通过接口作为参数实现应用场景) 抽象就是接口或者抽象类,细节就是实现类 依赖倒置原则定义: 上层模块不应该依赖下层模块,两者应依赖其抽象抽象不应该依赖细节细节应该依赖抽象接口负责定义public属性和方法,并且申明与其他对象依赖关系,抽象类负责公共构造部分的实现,实现类准确的实现业务逻辑。
接口隔离(interface segregation principle)
建立单一接口;(扩展为类也是一种接口,一切皆接口)。 使用多个隔离的接口,比使用单个接口要好。还是一个降低类之间的耦合度。 降低依赖,降低耦合。 定义:
客户端不应该依赖它不需要的接口;类之间依赖关系应该建立在最小的接口上;
迪米特原则(law of demeter LOD)
最少依赖原则,尽量降低类与类之间的耦合; 一个对象应该对其他对象有最少的了解,即一个实体应当尽量少的与其他实体之间发生相互作用,使得系统功能模块相对独立。
开闭原则(open closed principle)
用抽象构建架构,用实现扩展原则; 开闭原则就是说对扩展开放,对修改关闭。 一个软件实体通过扩展来实现变化,而不是通过修改原来的代码来实现变化。实现一个热插拔的效果。 开闭原则是对软件实体的未来事件而制定的对现行开发设计进行约束的一个原则。