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

目录

  • 定义
  • 作用及影响
  • 示例

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

定义

单一职责原则 / 单一功能原则 (Single Responsibility Principle,SRP), 规定一个类应该有且仅有一个引起它变化的原因,否则类应该被拆分。
原始定义:There should never be more than one reason for a class to change。
即:一个类应该只关心一种事情,解决一种问题。

作用及影响

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

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

示例

一个工具类中包含多种工具方法,如果其中一个功能修改,此类就要进行修改。
面向对象设计原则之单一职责原则_第1张图片
我们可以进行修改,拆分成多个工具类,每个工具类中只关心一种类型的工具方法。

在这里插入图片描述

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

你可能感兴趣的:(面向对象设计,单一职责原则)