如何将系统分解为模块?

时间:2009-04-24 11:18:50

标签: modularity

“模块化”的有效性取决于将系统划分为模块所使用的标准。

我想要的是,建议一些可用于将系统分解为模块的标准。

4 个答案:

答案 0 :(得分:5)

Cohesion:模块中的功能是相关的。

Low coupling:模块之间的依赖关系最小。

协调生命周期:模块内功能的更改往往会同时发生。通常是高凝聚力的结果。

答案 1 :(得分:2)

我认为单一责任原则是一个很好的指南。尝试定义每个模块的职责,并让每个模块对自己的事情负责。

请参阅http://butunclebob.com/ArticleS.UncleBob.PrinciplesOfOod

答案 2 :(得分:1)

答案 3 :(得分:1)

这是一个非常古老的问题。

  • 模块是程序员或程序员组的工作任务。这也是变革的单位。
  • 低耦合和内聚是模块之间关系估计质量的度量标准,但它们对分解无用。
  • 应使用“information hiding”作为标准进行分解。
  • 介绍基于“信息隐藏”原则的流程示例和描述:http://www.sqrl.ul.ie/Downloads/Lecture2.pdf
  • 这个问题的现状是软件产品线主题。