2017-05-05 66 views
1

假设有一个PHP子系统仅使用关联数组来存储某种结构化数据。所以事实上,在语言层面上没有任何机制来约束这些结构,但是你想在你的设计中用UML来定义它们。使用基于关联数组的UML建模类型

如:

接触可能看起来像这样在PHP关联数组:

[ 
    'name' => 'John Doe', 
    'birth' => '2000-04-01', 
    'email' => '[email protected]', 
    'address' => [ 
    'street' => '123 Main St', 
    'city' => 'Anytown', 
    'state' => 'NY', 
    'zip' => '1234', 
    'country' => 'US' 
    ] 
] 

所以我想在UML的图看起来是这样的:

enter image description here

但有人可能会批评这是错误的,因为它显示两个类而不是两个关联数组。所以我们可以使用(自定义)原型来显示这不是一个普通的类,而是哪个(以及如何定义它们)?

或者更常见的问题:用UML定义这类数据类型的正确方法是什么?

回答

1

简单地说:您的设计是正确的。你“可能”要做的是让Address嵌入类的Contact

enter image description here

如果你愿意的话,你可以表明它应作为关联数组实现:

enter image description here