知识卡片

交互框表达循环与条件

普通读书笔记卡 · 1943.b

内容

序列图不擅长展示循环和条件这类控制结构,最好留给活动图或代码本身,序列图应被当作对象如何交互的可视化,而非建模控制逻辑的工具。UML 2提供交互框(interaction frame)作补充:框把图的一部分圈起来标注操作符,loop配合警戒条件表示循环,alt给多个片断分别标警戒条件表示多选一分支,只有一个区域时用opt。作者认为交互框会让图的要点模糊,更偏好伪消息技巧。

参考来源

- 位置:《UML精粹:标准对象建模语言简明指南(第3版)》第4章《序列图》(源文件:_epub-src/EPUB/3.xhtml) - 结论依据:原文明确"这不是序列图所擅长的……把序列图当做对象如何交互的可视化,而不是建模控制逻辑的方式",并说明"为了展示循环,使用单个片断的loop操作符……对于条件逻辑,你可以使用alt操作符……如果你只有一个区域,就使用opt操作符",同时表明作者"发现交互框非常笨拙"。 - 原始内容:序列图的一个常见问题是如何展示循环和条件行为。第一件要指出的事情是,这不是序列图所擅长的。如果要展示类似的控制结构,你最好使用活动图或者代码本身……为了展示循环,使用单个片断的loop操作符……对于条件逻辑,你可以使用alt操作符。