概述
原则描述——单一职责原则
-
降低类的复杂度,一个类只负责一项职责,防止一个职责变化,影响别的职责
-
提高类的可读性,可维护性
-
降低变更引起的风险
-
通常情况下,我们应当遵守单一职责原则,只有逻辑足够简单,才可以在代码级违反单一职责原则; 只有类中方法数量足够少,可以在方法级别保持单一职责原则
举例:
1. 不遵守单一职责原则,造成单个类适配不同交通工具造成“飞机在公路上跑”
2. 单一职责原则,类内拆分——花销较大,客户端需要较大修改
public class SingleResponsibility1 {
public static void main(String[] args) {
RoadVehicle road = new RoadVehicle();
road.runLoad("汽车");
AirVehicle air = new AirVehicle();
air.runAir("飞机");
WaterVehicle water = new WaterVehicle();
water.runWater("航母");
}
}
class RoadVehicle {
public void runLoad(String vehicle) {
System.out.println(vehicle + "在公路上跑。。。")
}
}
class AirVehicle {
public void runAir(String vehicle) {
System.out.println(vehicle + "在天上飞。。。")
}
}
class WaterVehicle {
public void runWater(String vehicle) {
System.out.println(vehicle + "在水中跑。。。")
}
}
3. 类内扩展,在方法级别遵守单一职责原则
public class SingleResponsibility2 {
public static void main(String[] args) {
Vehicle v = new Vehicle();
v.runLoad("汽车");
v.runAir("飞机");
v.runWater("航母");
}
}
class Vehicle {
public void runLoad(String vehicle) {
System.out.println(vehicle + "在公路上跑。。。")
}
public void runAir(String vehicle) {
System.out.println(vehicle + "在天上飞。。。")
}
public void runWater(String vehicle) {
System.out.println(vehicle + "在水中跑。。。")
}
}
小结
- 单一职责原则视情况而定,具体的单一粒度更加需求负责程度决定;
- 单一职责主要体现低耦合思想;
往期参见 设计模式系列(一)概述
最后
以上就是包容小蚂蚁为你收集整理的设计模式系列(二)设计模式原则——单一职责原则原则描述——单一职责原则小结的全部内容,希望文章能够帮你解决设计模式系列(二)设计模式原则——单一职责原则原则描述——单一职责原则小结所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复