单一职责原则的定义里这句话是什么意思呢?

img


单一职责原则我理解的是,一个类一个尽可能少做一些事情,但定义里的这句话,一个类应该只有一个发生变化的原因是什么意思?什么叫做发生变化的原因,发生什么变化

这样理解:一个类,接口,方法只负责一项职责;不要存在多余一个导致类变更的原因
举个例子,学生类里的增删改查,只负责学生的,但是千万不要把老师的增删改查写到学生里面,学生类改变就会导致老师的增删改查用不了,学生类方法或者接口比如添加功能,你却在添加功能里面写了删除和修改的功能,这种也不符合要求,如果这个添加功能改变,导致删除和修改无法使用

单一职责优点如下:
降低类的复杂度
提高类的可读性
提高系统的可维护性
降低变更引起的风险

简单理解就是:一个类中包含功能尽量简化,一个模块干一个模块内的事。