组件图和包图有什么区别?
我使用 Papyrus 进行系统建模
组件图通常用于说明界面。所以一个组件可能是一个类,也可能是一个类的集合。
包图是一种将相关 UML 项组合在一起的机制,可以将其视为 UML 的(文件系统)目录/文件夹。
我参考了 Michael Feathers 的作者“有效地使用遗留代码”(Prentice Hall 2005)
在 UML 中,组件是部署在一起的类组,包是模型元素的通用分组设备。包可以对任何模型元素进行分组,甚至是用例之类的东西,但实际上它们通常对类进行分组,因此组件和包往往是同义词。
组件图显示了一个封装类及其接口、端口和由嵌套组件和连接器组成的内部结构。它解决了系统的静态设计实现视图。
包图显示了将模型本身分解为组织单元及其依赖关系。
来自 UML 2 用户指南
包是对事物进行分组。组件是系统的可更换部件。通常包在分析模型中标识,在设计模型中标识组件。组件图用于基于组件的开发