我是靠谱客的博主 包容小蚂蚁,最近开发中收集的这篇文章主要介绍设计模式系列(二)设计模式原则——单一职责原则原则描述——单一职责原则小结,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

原则描述——单一职责原则

  • 降低类的复杂度,一个类只负责一项职责,防止一个职责变化,影响别的职责

  • 提高类的可读性,可维护性

  • 降低变更引起的风险

  • 通常情况下,我们应当遵守单一职责原则,只有逻辑足够简单,才可以在代码级违反单一职责原则; 只有类中方法数量足够少,可以在方法级别保持单一职责原则

举例:

        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 + "在水中跑。。。")
    }
}

小结

  1. 单一职责原则视情况而定,具体的单一粒度更加需求负责程度决定;
  2. 单一职责主要体现低耦合思想;

往期参见 设计模式系列(一)概述

最后

以上就是包容小蚂蚁为你收集整理的设计模式系列(二)设计模式原则——单一职责原则原则描述——单一职责原则小结的全部内容,希望文章能够帮你解决设计模式系列(二)设计模式原则——单一职责原则原则描述——单一职责原则小结所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(47)

评论列表共有 0 条评论

立即
投稿
返回
顶部