资料内容:
S 是什么?
您应该在答案中概括的要点如下:
S 代表单一责任原则(SRP)。
S 代表一个类应该有一个且只有一个责任。
S 告诉我们只为一个目标编写一个类。
S 在应用程序模块中保持高可维护性和可见性控制。
现在,我们可以给出如下答案:
首先,SOLID 是 Robert C.Martin 阐述的前五个面向对象设计
****(OOD)原则的首字母缩写,也称为 Bob 叔叔(可选短语。S
是 SOLID 的第一原则,被称为单一责任原则(SRP。这一原则解释
为一个类应该有一个且只有一个责任。对于任何类型的类(模型、服
务、控制器、管理器类等等),这是任何类型的项目都应该遵循的一
个非常重要的原则。只要我们只为一个目标编写一个类,我们将在应
用程序模块之间保持高可维护性和可见性控制。换句话说,通过保持
高可维护性,这一原则具有重大的业务影响,通过提供跨应用程序模
块的可见性控制,这一原则支持封装。
如果需要进一步的详细信息,那么您可以共享屏幕或使用纸和笔将示
例编码为此处所示的示例。
例如,要计算矩形的面积。矩形的尺寸最初以米为单位,面积也以米
为单位计算,但我们希望能够将计算的面积转换为其他单位,例如英
寸。让我们看看打破 SRP 的方法。
打破 SRP
在单个类RectangleAreaCalculator 中实现上述问题,可以按如下方
式完成。但是这个类做的不止一件事:它破坏了 SRP。请记住,通
常,当您使用单词和来表示类所做的事情时,这是 SRP 被破坏的标
志。例如,以下类计算面积并将其转换为英寸
public class RectangleAreaCalculator {
private static final double INCH_TERM = 0.0254d;
private final int width;
private final int height;
public RectangleAreaCalculator(int width, int
height) {
this.width = width;
this.height = height;
}
public int area() {
return width * height;
}
// this method breaks SRP
public double metersToInches(int area) {
return area / INCH_TERM;
}
}