单一职责原则简单来说就是功能单一。 打个比方,手机有很多功能,可是摄像不如摄影机,音乐不如MP3,定位不如专用的GPS。意思是说一件产品简单一些,责任单一一些或许是更好的选择。 就编程而言:单一职责原则(SRP)就一个类而言,应该仅有一个引起它变化的原因。如果一个类承担的职责过多,就等于把这些职责耦合在一起,一个职责的的变化可能消弱或者抑制这个类完成其他职责的能力。这种耦合会导致脆弱的设计,当发生变化时,设计会遭到破坏。 当你在开发一个桌面小游戏时,把界面和逻辑分开着就是职责分离,界面类去处理界面,逻辑类来处理逻辑,这样一旦界面变化只需要修改界面类而不影响逻辑,反之亦然。 怎么判断是否应该分离? 如果你想到多余一个的动机去改变一个类,那么这个类就具有多余一个的职责,就应该考虑职责分离。 在编程时在类的职责分离上多加考虑,能有效的提高代码的质量。