我对 UML 中的“刻板印象”和“超类”之间的区别感到困惑。
假设我想创建一个包含“ WidgetMaker
.” 的图表。WidgetMaker
显然是一个Actor
所以 UML 标准是刻板印象它的演员:
<<Actor>> WidgetMaker
但我是在 Java/Ruby/C++ 世界中长大的。在那个世界里,关系是:
class Actor
end
class WidgetMaker < Actor
end
在 UML 中看起来像这样:
Actor
^
|
WidgetMaker
所以我的问题是:当你可以使用类继承轻松地对这些概念进行建模时,为什么 UML 有原型,它也有。
一旦我们有了更多“种类”的演员,问题就变得更加模糊:
Actor
^
|
------------------------
| | |
Person Robot Group
^
|
WidgetMaker
相对
<<Actor>> <<Person>> WidgetMaker