如何在UML序列图中显示实例化?

LeW*_*ody 17 uml sequence-diagram

如何显示WebServer实例化View并获取对流的控制权?也许我没有使用正确的图表类型?谢谢你!

替代文字

Ted*_*son 17

Ruben的答案中的图表是正确的,但缺少一般的UML答案.当"创建"行(在本例中为虚线)连接到创建的生命线的框/标签/顶部时,它会创建另一条生命线.例如:WebServer在其动作中创建一个View,视图完成的动作创建Widget.

-----
| a |
-----
  |
  []---->-----
  []     | b |
  |      -----
  |        |
Run Code Online (Sandbox Code Playgroud)

这里还有几个图表.

UML 2.2规范(超结构)在第474页有一个例子,图14.11是它们的规范语法/符号引用.并且在符号部分的第495页上,它指出"对象创建消息有一个带有空心箭头的虚线". 这在UML中进一​​步定义,因为消息类型是名为MessageSort的枚举.一个值是:

"•asynchSignal - 消息由异步发送action.createMessage生成 - 指定创建另一个生命线对象的消息."


Est*_*SFT 9

更正,使用" 创建 "消息来显示目标生命线所代表的对象的实例化.以下是VS 2010 Ultimate文档中主题的示例:

在序列图上创建消息http://i.msdn.microsoft.com/Dd409377.UML_Sequence(en-us,VS.100).png

UML Sequence Diagrams:参考资料来自http://msdn.microsoft.com/en-us/library/dd409377%28VS.100%29.aspx