美文网首页
SOLID之SRP

SOLID之SRP

作者: 码农戏码 | 来源:发表于2019-12-29 17:26 被阅读0次

单一职责原则 SRP,single responsibility principle

SRP是所有原则中最简单的之一,也是最难正确运用的之一,也是我们日常中最常用的一个

不管是编码,重构,甚至当下流行的微服务中

在很多团队的规范中,都会听到一条编码规范:一个方法不要超过x行代码

作为一群自命不凡的程序员,为什么在规范中却有如此一条格调不对称规范

主要问题就在于思维对SRP的缺失


微服务这个术语的一个问题是会将你的关注点错误地聚集在“微”上。它暗示服务应该非常小。很多团队在实施时,也是往小了去考虑,偏移了核心目标

微服务的目标是将精心设计的服务定义为能够由小团队开发的服务,并且交付时间最短,与其它团队协作最小。

理论上,团队可能只负责单一服务,因此服务绝对不是微小的

单一

从个人理解可以分为狭义与广义

狭义:

狭义只是从面向底层实现细节的设计原则

一个类而言,应该仅有一个引起它变化的原因

在日常中,在编写方法或者重构方法,也是以这个为原则,即确保一个函数只完成一个功能。

在将大方法重构成小方法时经常会用到这个原则

广义:

相对狭义,适用的范围相对大些,不再是一个类,一个方法,亦或是一个原因

任何一个软件模块都应该只对某一类行为者负责

“软件模块”不再只是一个类,可以是一组紧密相关的函数和数据结构,甚至一个独立应用服务

职责

什么是职责?如果一个类承担多于一个职责,那么引起它变化的原因就会有多个

在SRP中,职责定义为“变化的原因”,如果你能够想到多于一个的动机去改变一个类,那么这个类就具有多于一个的职责

因此对于职责的定义需要结合具体业务,有时从感性上理解一个类的多个方法应该拆分,但如果应用程序的变化方式总是导致这几个职责同时变化,那么就不需要分离

欢迎关注【码农戏码】

相关文章

  • SOLID之SRP

    单一职责原则 SRP,single responsibility principle SRP是所有原则中最简单的...

  • 设计模式 - 设计原则

    SOLID 单一职责原则(SRP) SRP(Simple Responsibility Principle):A ...

  • 【设计模式】设计原则之S.O.L.I.D 五原则

    SOLID 原则 S:单一职责原则 SRP(Single Responsibility Principle)O:单...

  • 设计模式 · SOLID原则

    SOLID原则是指: Simple Responsibility Principle,SRP单一职责原则 Open...

  • 类的设计原则

    简介 SOLID: S: 单一职责原则 (SRP)O: 开闭原则 (OCP)L: 里氏替换原则 (LSP)I: 接...

  • 设计模式总览

    SOLID五大设计原则 单一职责原则(SRP) 开闭原则 O(Open Closed Principle面向扩展开...

  • 单一职责原则

    这是SOLID原则这一系列的第二篇文章,主要来描述单一职责(SRP)原则。SRP指出“每一个类或者类似的代码块应该...

  • Learning TypeScript 读书笔记3

    Chap 4 TypeScript中的面向对象编程 1.面向对象开发的一些原则SOLID: 单一职责原则SRP: ...

  • OOP之「SOLID」

    SOLID 面向对象设计原则 英文简写名称SRP单一职责原则OCP开放封闭原则LSP里氏替换原则ISP接口隔离原则...

  • 设计模式之设计原则

    SOLID原则是由五个设计原则组成:单一职责原则(SRP),开闭原则(OCP),里式替换原则(LSP),接口隔离原...

网友评论

      本文标题:SOLID之SRP

      本文链接:https://www.haomeiwen.com/subject/ruzyoctx.html