设计模式剖析系列之面向对象设计原则

By heiry on 2019-08-04 [ in 技术 ]

一.开闭原则

实现方式:

1. 遵循“抽象约束、封装变化”原则,通过接口或者抽象类为实体定义一个相对稳定的抽象层,而将相同的可变因素封装在相同的具体实现类中。

2.参数类型、引用对象尽量使用接口或者抽象类,而不是实现类。

3.缩小功能颗粒度。功能粒度越小,被复用的可能性就越大,重复利用可能性就越高。

二. 里氏替换原则

简单地说,把父类都替换成它的子类,程序的行为没有变化。只要出现父类的地方,均可用子类替换,而且对整体实现并没有任何影响,提高代码的复用性。

实现方式:

子类继承父类时,除添加新的方法完成新增功能外,尽量不要重写父类的方法。

三. 依赖倒置原则

——高层模块不应该依赖低层模块,两者都应该依赖其抽象

——抽象不应该依赖细节

——细节应该依赖抽象

实现方式:

1.每个类尽量提供接口或抽象类,或者两者都具备。

2.变量的声明类型尽量是接口或者是抽象,模块间的依赖通过抽象发生,实现类之间不发生直接的依赖关系,其依赖关系是通过接口或抽象类产生的。

3.任何类都不应该从具体类派生。

4.尽量不要重写基类已经写好的方法(符合里氏替换原则)。

 >>



© 2009-2024 MOSANG.NET DESIGNED BY HEIRY