EA&UML日拱一卒--序列图(Sequence Diagram)::迭代表达式

本文继续讨论消息属性对话框,今天的焦点是迭代表达式就是下图中红色和蓝色的部分。


EA&UML日拱一卒--序列图(Sequence Diagram)::迭代表达式


执行条件


上图中红框中的部分用于指定消息发送的条件,这个条件可以是伪代码或是真正的编程语言,UML不描述其格式。


是否迭代


上图中蓝框中的部分用于指定消息是单发的还是一个消息序列。


应用实例


 在图形编辑软件中,经常要处理拖动操作,这个拖动操作可以解释为一个左键按下事件+若干鼠标移动事件+鼠标释放事件。时序图表达如下:


EA&UML日拱一卒--序列图(Sequence Diagram)::迭代表达式


*[mouse position changed]就是迭代表达式,语义为当鼠标位置变化时会发送mouseMoveEvent消息,且这种情况会多次发生。作为追加信息,我们规定要以鼠标没有释放为前提。


这时【Sequence Expression】的设定如下:


EA&UML日拱一卒--序列图(Sequence Diagram)::迭代表达式


条件执行


如果【Is Iteration】没有被选中,就表示该消息只在条件满足时发送,否则什么也不做。这里就不举例了。


如果阅读本文能给您带来些许收获,欢迎分享给更多的朋友!

阅读更多新文章,请扫描下面二维码,关注公众号【面向对象思考】

EA&UML日拱一卒--序列图(Sequence Diagram)::迭代表达式