概念
误区:一个类只做一件事
前期:一个模块应该有且仅有一个变化的原因
后期:一个模块应该对一类且仅对一类行为负责
一个模块最理想的状态就是不改变,其次是少改变,这可以成为一个模块设计好坏的衡量标准。真实的项目中,一个模块之所以会频繁变化,就是因为引起它改变的原因太多了
举例
在用户类中,有两个需求:
1.增加电话号码:这是用户管理的需求
2.增加查看用户加入多少个项目,这是项目管理的需求
这是两种完全不同的需求,但是存在于一个类中,这个类就很难稳定下来,应把不同需求引起的变动拆分开。拆分为用户类和项目成员类
总结
发现的关注点越多,就可以构建出更多的类,每个类的规模相应就会越小,相关的需求变动能够稳定下来的几率就越大。