单一职责原则 SRP:
Single Reponsibility Principle,简称:SRP
一个类只负责一项职责。就一个类而言,应该只有一个引起它变化的原因。
问题由来:
在程序开发的时候,一个完整的程序是由多个功能步骤组成的。
若是没有用单一职责,那么就是多个功能混杂在在一个方法,一个类里。
造成功能之间的关系如同蜘蛛网一样到处调用,到处牵连。
假如完成后,要添加修改功能,那么面对这团网,想必也是无比头大的。
并且这团功能无法作为通用工具用于下一个项目,若是下个项目会有需要类似的功能,那么只能再重写一遍。
解决方案:
将功能进行分类,拆分到不同的类里。让一个类只负责某一种功能,让结构简化。
当修改其中一项功能时,不会牵连破坏到其它功能的完整性。
并且分类过后的功能还可以被复用。
图片例子:
例如我有个标记器的静态工具类,用于时间倒计时的功能,
那么这个工具类就可以被高层的各种动态类复用,而不是在动态类里面在重写一个相同的功能。