为什么要遵守七大原则:
在软件开发中,为了提高软件系统的可维护性和可复用性,增加软件的可扩展性和灵活性,程序员要尽量根据 7 条原则来开发程序,从而提高软件开发效率、节约软件开发成本和维护成本。我们将在下面的几节中依次来介绍这 7 条原则,本节首先介绍开闭原则。
1.开闭原则
开闭原则的核心思想:软件实现应该对扩展开放,对修改关闭,其含义是说一个软件应该通过扩展来实现变化,而不是通过修改已有的代码来实现变化的。
简而言之就是在实现新的需求时候,尽量考虑重新扩展代码来实现,而不是去修改原有的逻辑来实现。当然不得不修改原方法的时候,修改范围应该是局部的,隐藏的方法。
2.里氏替换原则
简单来说就是子类继承父类尽量不要重写父类中的非抽象方法,可以定义自己的方法来实现需要的功能。
3.依赖倒置原则
简单来说就是通过面向接口编程来降低类之间的耦合性。一般在项目中满足如下的几个规则
a)变量的生命类型尽量使用接口或者抽象类
b)使用继承的时候尽量遵循里氏替换原则。
4.单一职责原则定义
简单来说就是将不同职责的类进行分离,一个类所负责的功能尽量的简单而单一,提高类的内聚性,这个同样也适用于方法一个方法的粒度尽可能的小,这样才能提高复用性。
5.接口隔离原则
要为各个类建立它们需要的专用接口,而不要试图去建立一个很庞大的接口供所有依赖它的类去调用。接口尽量小,但是要有限度。一个接口只服务于一个子模块或业务逻辑。
6.迪米特法则
简单来说就果两个软件实体无须直接通信,在类的调用上面建立第三方转发调用该功能,而不是直接去调用,这样可以降低类之间的耦合度,提高模块的相对独立性。但是坏处就是会产生很多的中间类,从而增加系统的复杂性,使模块之间的通信效率降低,所以使用这个原则时候尽量要衡量好。
7.合成复用原则
简单来说就是在复用类的时候,首先考虑关联关系,聚合关系,组合关系来实现类的复用,而不是使用继承来实现类的复用。这样可以降低类的耦合度。