Java 项目的包结构?

2022-08-31 07:59:30

在 Java Web 应用程序中设置包结构的最佳实践是什么?

您将如何设置您的src,单元测试代码等?


答案 1

您可以遵循 maven 的标准项目布局。您不必实际使用maven,但它将使将来的过渡更容易(如有必要)。另外,其他开发人员将习惯于看到这种布局,因为许多开源项目都是以这种方式布局的,


答案 2

您可以检查一些现有资源:

  1. 正确打包 Java 类
  2. Spring 2.5 建筑
  3. Java 教程 - 命名包
  4. SUN 命名约定

就其价值而言,我倾向于使用的我自己的个人准则如下:

  1. 从反向域开始,例如“com.mycompany”。
  2. 使用产品名称,例如“我的产品”。在某些情况下,我倾向于使用不属于特定产品的常见包装。这些最终会根据这些常见类的功能进行分类,例如“io”,“util”,“ui”等。
  3. 在此之后,它变得更加自由形式。通常我根据项目,功能领域,部署等进行分组。例如,我可能有“project1”,“project2”,“ui”,“client”等。

其他几点:

  1. 在我参与的项目中,从设计文档中流出包名称是很常见的。通常,产品已经分为功能或用途领域。
  2. 不要太强调立即将通用功能推送到更高的包中。等待跨项目、产品等的需求,然后重构。
  3. 监视包间依赖关系。它们并不都是坏的,但它可能意味着可能是独立单元之间的紧密耦合。有一些工具可以帮助您跟踪这一点。