Architecture 多模块与单模块设计的选择

Architecture 多模块与单模块设计的选择,architecture,Architecture,多模块和单模块软件体系结构之间有什么区别?每种方法的优缺点是什么?什么时候应该使用每个模块,为什么使用?使用多个模块的主要优点是您可以重复使用它们,而单个模块通常包含多个功能,彼此之间没有必要的关联,并且不适合重用。这取决于项目的规模,但对于大型项目,多个模块带来更多优势 多个模块还提供了更易于更新和更改的系统。如果您发现一个bug,您只需要更新包含bug的模块,而不需要更新整个系统 编译时间对于具有更多模块的系统来说也是更好的,因为并非所有模块都需要为小的更改而编译(当然,有了足够智能的编译器

多模块和单模块软件体系结构之间有什么区别?每种方法的优缺点是什么?什么时候应该使用每个模块,为什么使用?

使用多个模块的主要优点是您可以重复使用它们,而单个模块通常包含多个功能,彼此之间没有必要的关联,并且不适合重用。这取决于项目的规模,但对于大型项目,多个模块带来更多优势

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

编译时间对于具有更多模块的系统来说也是更好的,因为并非所有模块都需要为小的更改而编译(当然,有了足够智能的编译器,单模块程序也不会有问题)

测试是另一个问题-测试较小的模块可以减少bug的数量,因为它们可以精确定位到特定的模块

至于缺点,多个模块可能更难维护;如果它们大量存在并且没有很好地记录,那么遵循依赖关系也可能是一项乏味的任务

同样,这取决于项目的规模

注意:由于对新用户的八小时自我回答限制,此答案最初由OP发布为问题正文中的自我回答

发件人:

根据项目的逻辑和功能需求,可以创建单个模块或多模块项目

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

  • 在项目之间重用和共享模块,这对于实用程序类的集合非常有用
  • 分别构建和测试模块
  • 将每个模块置于其自己的版本控制之下
项目结构最初是在项目创建时定义的,可以修改。例如,您可以创建单个模块项目,然后添加更多模块


请不要在问题正文中写答案。相反,把你的答案变成一个答案。这样,人们就可以分别对问题和答案的质量进行投票,你最终可以接受答案。好的,谢谢,为了将来。我是一个新用户,我明白这不是问题。尽管你现在可以进行编辑;你不必等到下一次。或者我可以帮你。我想我需要你的帮助,因为哦!无法提交您的答案,因为:声誉低于100的用户在提问后8小时内无法回答自己的问题。您可以在7小时内自行回答。在此之前,请使用评论或编辑您的问题。谢谢,是的,这是他们用来防止人们错误使用答案的功能。我能做到。此外,有一个向上投票和五个“学习如何使用网站”的声誉点。