面向对象设计原则之单一职责原则

目录

面向对象设计原则之开-闭原则
面向对象设计原则之里式替换原则
面向对象设计原则之依赖倒置原则
面向对象设计原则之单一职责原则

定义

单一职责原则 / 单一功能原则 (Single Responsibility Principle,SRP), 规定一个类应该有且仅有一个引起它变化的原因,否则类应该被拆分。

原始定义:There should never be more than one reason for a class to change。

即:一个类应该只关心一种事情,解决一种问题。

作用及影响

如果代码不满足这个原则, 并不会导致大面积的代码重写, 只不过:

  • 一个职责的变化可能会削弱或者抑制这个类实现其他职责的能力;
  • 当客户端需要该对象的某一个职责时,不得不将其他不需要的职责全都包含进来,从而造成冗余代码或代码的浪费。

示例

一个工具类中包含多种工具方法,如果其中一个功能修改,此类就要进行修改。

我们可以进行修改,拆分成多个工具类,每个工具类中只关心一种类型的工具方法。

注意:单一职责同样也适用于方法。一个方法应该尽可能做好一件事情。如果一个方法处理的事情太多,其颗粒度会变得很粗,不利于重用。

相关推荐
萤火虫Coding5 天前
SOLID原则-单一职责原则
设计模式·设计原则·单一职责原则·solid
邮专薛之谦18 天前
Java设计模式六大原则
java·接口隔离原则·开闭原则·单一职责原则·六大原则
蜡笔小新..1 个月前
【设计模式】软件设计原则——开闭原则&里氏替换&单一职责
java·设计模式·开闭原则·单一职责原则
小哇1232 个月前
如何划分类/单一职权原则SRP
单一职责原则
千年奇葩2 个月前
Unity SRP 可编程渲染管线的基本用法
unity·单一职责原则·srp
激昂~逐流2 个月前
单一职责原则介绍
单一职责原则
要记得喝水2 个月前
软件设计原则之单一职责原则
开发语言·windows·c#·.net·visual studio·单一职责原则
勤劳兔码农3 个月前
单一职责原则与REST API设计:如何定义清晰的资源与职责
单一职责原则
不爱学习的啊Biao3 个月前
设计模式六大原则(一)–单一职责原则(C#)
c#·单一职责原则
范范08253 个月前
单一职责原则在微服务中的应用:服务分解与职责明确
java·微服务·单一职责原则