UML 图中需要的指针、列表和向量属性名称?

Pointers, Lists and Vectors attribute names necessary in the UML diagram?

我有一个简短的问题:
我应该在 UML 图中命名类型的属性,如列表、数组、向量或对象指针(不是原始类型),还是仅 association/aggregation/composition 个箭头就足够了?

示例:以下哪个图表是正确的?

这实际上取决于您要在此建筑图中传达的内容。 绘图的目的是帮助推理软件的结构。它不应该用来表示所有的实现细节。如果你把太多的细节放在里面,它会变得杂乱无章,而且随着变化的发生,很难与源代码保持一致。

UML 绘图应该比实现更抽象。它应该有意隐藏细节,以便传达 类 的外部视图,而不是它们的内部实现方式。您通常不希望 类 的用户对他们的内部实现假设太多,因此您不想暴露太多。

此外,一个架构通常由多张图纸表示,而不是一张。尝试让每幅画都集中在一个抽象层次上。如果您有几个表示应用程序主要逻辑的高级 类,以及许多低级 类,那么单独绘制一个高级 类 是有意义的。

在 UML 中,如果您在关联的远端写上 属性 名称,那么您的第二张图就是正确的。虽然允许 UML 属性未命名,但这不是一个好的做法。使用关联端来指示关系存在的原因。有时一对 类 之间必须存在多个关联,但出于不同的原因。你如何区分它们?

第一个图表显示了每种类型的两个属性。一个被命名,另一个(在每个关联的末尾)未命名。那是不正确的。