耦合&凝聚力设计

时间:2012-03-25 16:08:49

标签: java

这是我在开发工作中经常遇到的常见情况。对于每个模块,我将不得不检索属于相应部门的用户列表。即。人力资源/财务/采购

用户逻辑的检索是否应集中在com.company.user模块,或者我应该让每个模块检索所需的用户。即。每个模块都与USER_TABLE进行对话?

基于我对内聚/耦合和DRY原理的理解。我认为正确的方法应该是实现这个按角色检索用户的所有逻辑应该集中在用户包中。

我是否正确实施?

套餐水平

com.company.financial
com.company.humanresource
com.company.purchasing
com.company.user

2 个答案:

答案 0 :(得分:3)

是的,我认为你是对的。用户逻辑的检索应该在用户包中

答案 1 :(得分:0)

是的,你没错。按功能打包比逐层打包更加模块化,

所以包裹:

com.company.user

可以包含以下类:

UserGUI.java // gui class for adding users
User.java    // user model
UserDAO.java // user data access object
UserAction.java // controllers

有用的文章: Package by feature, not layer