首页 > 代码库 > 设计模式六大原则
设计模式六大原则
单一职责原则:
定义:不要存在多于一个导致类变更的原因(一个类只负责一项职责),将逻辑和数据分离。
优点:
1.可以降低类的复杂度,一个类负责一个职责,逻辑肯定要比负责多个职责简单许多。
2.提高类的可读性,调高系统维护性。
3.变更引起的风险降低,变更是必然的,如果单一职责原则遵守的好,当修改一个功能时,可以显著降低对其他功能的影响。
里氏替换原则:
定义1:如果对每一个类型为 T1的对象 o1,都有类型为 T2 的对象o2,使得以 T1定义的所有程序 P 在所有的对象 o1 都代换成 o2 时,程序 P 的行为没有发生变化,那么类型 T2 是类型 T1 的子类型。
定义2:所有引用基类的地方必须能透明地使用其子类的对象。
可以理解为:
1.子类必须完全实现父类方法;
2.子类可以有自己的个性
3.覆写或实现父类的方法时输入参数可以宽于或等于父类参数
4.覆写或实现父类的方法时输出结果可以窄于或等于父类参数
依赖倒置原则
定义:高层模块不应该依赖低层模块,二者都应该依赖其抽象;抽象不应该依赖细节;细节应该依赖抽象。
依赖倒置原则的核心思想是面向接口编程,
接口隔离原则
定义:客户端不应该依赖它不需要的接口;一个类对另一个类的依赖应该建立在最小的接口上。
就是一个类去实现接口的时候,不应该去实现他不需要的方法。
接口隔离原则的含义是:建立单一接口,不要建立庞大臃肿的接口,尽量细化接口,接口中的方法尽量少。也就是说,我们要为各个类建立专用的接口,而不要试图去建立一个很庞大的接口供所有依赖它的类去调用
迪米特原则
定义:一个对象应该对其他对象保持最少的了解。
(尽量降低耦合性)
开闭原则
定义:一个软件实体如类、模块和函数应该对扩展开放,对修改关闭。
我们这样做的目的是当有新功能出现的时候,尽量不要去修改原有的逻辑,可以实现一个新的类,然后覆写父类的方法,这样,原有的逻辑没有变,新的需求也实现了。当有一天出现bug了,可以直接修改这一个类就可以。
设计模式六大原则