2011-11-07 59 views
3

多模块和单模块软件体系结构之间的区别是什么?每个的优点和缺点是什么?什么时候应该使用每一个,为什么?多模块和单模块设计之间的选择

+0

请不要在问题主体中写答案。相反,将您的答案转化为答案。这样,人们可以对问题的质量进行投票,然后单独回答,最终您可以接受答案。 – Pops

+0

好的,谢谢,未来。我是一个新用户。 –

+0

不是问题,我明白。尽管您现在可以编辑该编辑;你不必等待下一次。或者我可以为你做。 – Pops

回答

4

使用多个模块的主要优点是可以重复使用它们,而单个模块通常包含多个功能,不必相互关联,而且对于重用而言不切实际。这取决于项目的规模,但对于大型项目来说,多个模块带来更多优势。

多模块还提供了一个更容易更新和更改系统。如果你发现一个bug,你只需要更新包含bug的模块,而不是整个系统。

编译时间对于具有更多模块的系统来说也更好,因为不需要对它们进行编译,所有这些编译都需要进行小的更改(当然,使用足够智能的编译器,这对单模块程序来说不应该是个问题)。

测试是另一个问题 - 测试较小的模块可以减少错误数量,因为它们可以指向特定模块。

至于缺点,多个模块可能难以维护;如果它们存在的数量很多并且记录不够好,则依赖关系也可能是一项乏味的任务。

同样,这取决于项目的大小。

1

注意:这个答案最初由OP作为自我回答发布在问题主体中,原因是新用户的八小时自我回应限制。

http://www.jetbrains.com/idea/webhelp/project.html

根据不同的逻辑和功能要求的项目,您可以创建一个模块或一个多模块项目。

  • 单模块项目最适合开发简单的应用程序。
  • 多模块项目用于复杂任务:
    • 创建复杂的逻辑结构。
    • 为项目的各个部分提供单独的输出,例如部署多个JAR文件。
    • 为项目的各个部分提供不同的SDK。

多模块项目给你重要的优势。打破你的项目分成若干独立的模块,您可以:项目之间

  • 重用和共享的模块,它可以是实用类的集合是有用的。
  • 单独构建和测试模块。
  • 保持每个模块在其自己的版本控制下。

项目结构初始地被定义在项目创建,并且可以修改。例如,您可以创建单个模块项目,然后添加更多模块。