- 概念:指不要存在多于一个导致类变更的原因
- 假设一个类负责俩个职责,一旦发生需求变更,修改其中一个职责的逻辑代码,有可能导致另一个职责的功能发生故障
- 优点:降低类的复杂度,提高类的可读性,提高系统的可维护性,降低变更引起的风险
事例一: 一次性修改
改造前:
public void modifyUserInfo(Sring userName,Sring address, boolean bool){if(bool){}else{}userName = "Tom";address = 'beijing';}
改造后:
private void modifyUserName(String UserName){userName = 'Tom';}private void modifyAddress(Sring adress){adress = 'beijing';}
事例二:直播&录播案例
改造前:
public class video{public void watch(String videoType){if("直播".equals(videoType)){System.out.println("不能快进")//视频流加密逻辑一//未付费可观看十分钟,付费可一直观看if(){}else{}//会员排名显示最近十五分钟送礼物最多的先后顺序if(){}else{}}else if("录播"){System.out.println("可以反复回看")//视频流加密逻辑二//付费可一直重复看,未付费可观看十分钟if(){}else{}//会员排名显示直播间结束统计的排名if(){}else{}}}}
改造后:
