我会说答案取决于你问的是谁.
我认为差异是粒度和角色之一.我理解的软件组件是一个自包含的实体,具有定义明确(且优选稳定)的接口,该接口与系统的其余部分交互,从系统架构的角度来看具有重要意义.一个例子是数据访问抽象层.
对我来说,一个模块宁愿是一个可部署的源代码包,其中包含共享共同目的的代码,但不会在系统中执行任何重要的角色(这意味着替换它不需要更改系统的整体架构).一个例子是Web服务中的JSON序列化程序.
一般来说,
模块将倾向于使用许多组件来提供其服务,而组件可能由少数类和其他组件构成.
无论如何,它的主观性取决于应用的规模.对于小型应用程序,可能存在单个程序(模块)和许多组件.在中型应用中,可能有几个模块和许多组件.在大型应用程序中,您可能希望引入术语子系统,它比模块更加粗糙!
| 归档时间: |
|
| 查看次数: |
6488 次 |
| 最近记录: |