我在uml类diagramm中建模可索引类型有问题。可索引类型用于描述字典。
以下示例说明了我的问题:给定以下JSON:
{
"hero1": {
"f": "fast",
"c": "clever",
"g": "good"
},
"hero2": {
"e": "evil"
},
"hero3": {}
}如您所见,有一个Hero对象,它包含键值对的权力。每个幂都有一个键(例如"f“)和一个值(例如”快速“)。
在UML中建模--我可以这样做:

我的问题是在..。部分是因为让我们想象一下有成千上万的键值对,为每个键值对创建一个类似乎是不对的。
在TypeScript中,我会这样编程:
interface PowerObject {
[powercode: string]: string
}我不确定我是否应该把它描述成一个英雄到PowerObject的关系与0.*的关系。
编辑:我认为这个问题不同于链接的问题,因为它描述了一组未知的“类”之间的关系,这些类的结构已经被预先知道了。然而,将一个类集成到另一个类确实是有意义的,而且非常有用。
发布于 2018-01-22 13:03:57
我不认为你的模型有用/有用。它们混淆了值和属性。
Hero类似乎有一个集合值powers属性,其中幂值只是来自PowerEnum = {f:“快速”、c:“聪明”、g:“好”、.}的枚举值。
发布于 2018-01-22 12:52:03
谢谢你的回答和评论。根据第一个评论,我可以更好地说明PowerObject在Hero对象中。
然而,一个子问题仍然存在。这是为了形象的“权力”。例如,PowerObject可以包含零、一个或多个幂值,比如(快速的、聪明的、好的、好的、邪恶的).)。
因为权力列表可以是无限的,只是一个字符串,所以我不太确定我是否用正确的方式说明了它。

https://stackoverflow.com/questions/48379376
复制相似问题