知识卡片

包与组合结构的时机区别

普通读书笔记卡 · 1952.b

内容

理解组合结构和包这两种分组手段的关键区别是:包是编译时的分组机制,划的是代码组织结构;组合结构展示的是运行时分组,划的是一个对象运行期间实际由哪些部件组成、彼此如何连接。正因为这个运行时视角,组合结构天然适合展示组件及组件如何分解成更细的部件,所以这套表示法主要出现在组件图里。作为UML 2里相对新的图形类型,实际效果如何还需更多实践检验,但UML委员会内部不少成员认为这项新增很有价值。

参考来源

- 位置:《UML精粹:标准对象建模语言简明指南(第3版)》第13章《组合结构》(源文件:_epub-src/EPUB/12.xhtml) - 结论依据:原文说明"考虑包和组合结构之间的区别的一个好方法是:包是编译时分组,而组合结构是展示运行时分组。组合结构非常自然地适合展示组件及组件如何分解成部件,因此这个表示法大都在组件图中使用"。 - 原始内容:考虑包和组合结构之间的区别的一个好方法是:包是编译时分组,而组合结构是展示运行时分组。组合结构非常自然地适合展示组件及组件如何分解成部件,因此这个表示法大都在组件图中使用……UML委员会的许多成员认为添加这些图非常有价值。