架构设计五大原则 SOLID五大设计原则

SRP:单一职责原则

容易误认为是指:一个软件模块都应该只做一件事,实际上并不准确。单一职责原则准确描述应该是:一个软件模块都应该只对一类行为负责。

如果多个特性不同的项目同时依赖同一个底层接口,只要有任意一个项目需要改动依赖的底层接口逻辑,就会影响到其他项目。

单一职责原则主要讨论函数和类之间的关系,但在两个层面上有不同的表现形式。在组件层面,称为共同闭包原则;在软件架构层面,则用于奠定架构边界的变更轴心。

 

OCP:开闭原则

良好的软件设计应该是易于扩展,抗拒修改。

开闭原则主要目的是让系统易于扩展,同时限制其每次被修改所影响的范围。实现方式是通过将系统划分为一系列组件,并将这些组件间的依赖关系按层次结构进行组织,使得高阶组件不会因低阶组件被修改影响。

 

LSP:里氏替换原则

任何基类可以出现的地方,子类一定可以出现。

里氏替换原则一旦违背了可替换性,该系统架构就不得不为此增加大量复杂的应对机制。

 

ISP:接口隔离原则

个类与另一个类之间的依赖性,应该依赖于尽可能小的接口。

接口隔离原则避免依赖不需要的东西,以免带来意料之外的麻烦。

 

DIP:依赖反转原则

在设计系统时,多引用抽象类型,而非具体实现。例如Spring的IOC和DI。

你可能感兴趣的:(架构设计,java,设计模式,架构设计,设计原则,SOLID)