在Visual Studio 2017中的类图中创建聚合和组合

时间:2017-12-19 21:20:24

标签: visual-studio uml

我正在考虑在Visual Studio中创建一个类图。我注意到工具箱似乎只允许类之间的关联关系。

是否有可能在类图中创建更强的关系,即聚合和组合关系?

此外,是否可以从代码中自动创建类图?

1 个答案:

答案 0 :(得分:6)

很棒的问题。

首先:Visual Studio(VS)类设计器不是CASE Tools(如Enterprise Architect等)。
它只是源代码的类表示。这意味着类设计器中的类始终与源代码中的类同步。如果删除源代码中的某些属性或方法,则会与类设计器同步,反之亦然。

其次:此问题的答案隐藏在将关联和聚合(和组合)映射到源代码。

要将关联,聚合和合成映射到源代码,请参阅:Reference 1Reference 2

在某些情况下,无法检测源代码中的类之间的关联或聚合或组合关系。

例如,以下代码中CustomerCar之间的关系类型是什么?

public class Customer {
    private String name;
    private String address;
    private String contactNumber;

    private Car car;        
}


public class Car {
    private String modelNumber;
    private Customer owner;
}

它可以是关联或聚合。

最后,由于上述第一和第二个原因,Visual Studio类图没有聚合和组合。