鲍勃大叔说:
单一职责原则(SRP):就一个类而言,应该仅有一个引起它变化的原因。
我最开始理解成只能有一个原因去改变,跟我以前的认知有问题,从我开始学OOP以来,我觉得一个类就是一个事物的抽象,比如书,BOOK类,如果按照我理解的意思,book类就有很多可以改变它的原因,例如翻书或者买书,我感觉SRP说的是函数的职责,不是类的职责,于是我就去找了一个同学讨论,然后我们讨论了一会,得出的结论是这样的(以保龄球为例):
SRP指的是只改变保龄球相关的内容算一件事,如果我用一个比赛类去代替保龄球的话,那就违背了SRP,因为可能会有羽毛球类,然后就会有多个原因让比赛类改变了,大概理解是这样的。