如果真的要遵循 单一职责原则 的话,真的要每个类只做一件事情的话,我想项目中会出现类爆炸的情况。尤其是在开发基于Spring等企业级框架的业务代码时。
每个类真的要这样吗?如果真的要这样的话,我们会不停的找某个类作用,基本上不用管方法了。上来直接就调方法。
这样做还真倒是实现了单一职责原则。但这带来的影响显然性价比不高,还加大了项目的复杂度。
可能用的时候不对。 其实单一职责原则的使用场景更多的时候是在重构代码时,而不是在设计之初就订版。
在一个新项目开始时,我们还是按照传统的方式,依据业务模块将每个具体的操作方法写在所属类里面。这个时候也可以做些小小的分类,比如将增删改的方法和查询的方法写在两个不同的类里面。这样做些简单的归类,如果查询的类需要变化,可能需要使用基于缓存的查询,这时候就可以直接把查询类替换掉。而增删改的类不需要动。