关于封面:我觉得我们要相信总会有光,
上次写了一篇UML相关的文章 | 类图,一般用在标准开发中,或者写文档的时候,还是需要画图的,就像毕业设计一样。 希望对大家有帮助。
注:本文使用的绘图软件是Microsoft Visio。

一、概述
序列图更像是一个名称。 我们平常所说的顺序图、顺序图也叫它。
序列图是一种基于交互的对象行为建模。 它是UML用来描述对象之间信息交互过程的方法。 它是描述对象之间协作关系的模型。
序列图用于捕获运行系统中对象之间的时间顺序交互,由生命线和消息组成。
序列图将交互表示为二维图。 纵轴为时间轴,时间沿着纵线向下延伸。 横轴表示协作中每个单独对象的分类器角色。 分类角色由生命线表示。 当对象存在时,角色用虚线表示;当对象的进程处于活动状态时,生命线为双线。 消息由从一个对象的生命线到另一对象的生命线的箭头表示。 箭头在图中从上到下按时间顺序排列。
2. 组成要素 2.1. 角色
该角色可以是用户、外部系统、机器等。
在visio软件中用下图表示:
2.2. 物体和生命线
关于对象的命名:
对象名和类名,例如:dispatcherServlet:DispatcherServlet 只显示类名,表示是匿名对象,例如::DispatcherServlet 只显示对象名,不显示类名,例如:dispatcherServlet
生命线:在序列图中表示为从对象图标向下延伸的虚线,表示对象存在的时间。
2.3. 活动栏
生命线虚线上可以使用活动条来表示某种行为的开始和结束,通常用一个小矩形来表示。
这在 visio 软件中称为激活。
注意:但是这里需要强调的是,活动条不一定非得用来代表生命线上执行的发生。 活动栏的加入使得执行更加直观,但是在很多复杂的序列图中,活动栏也会让图变得更加复杂和难以绘制。 在这种情况下,最好不要使用活动条。
2.4. 消息
什么是消息?
在面向对象的分析和设计中,对象的行为也称为消息,因为对象之间的交互也可以看成是对象之间消息的发送。 通常,当一个对象调用另一对象中的行为时,会传递一条消息。
序列图关注生命线之间的通信,生命线是对象发送的消息。 UML 用生命线之间的实心箭头表示消息,每条消息都从发送对象指向接收对象。
例如:
另外,消息还细分为简单消息、同步消息和异步消息。
简单消息:表示控件如何从一个对象发送到另一个对象,不包含控件的详细信息。
同步消息:意味着阻塞等待。 例如:A向B发送消息后,对象A必须等到B执行完成返回后才能继续执行。 这是同步消息。
异步消息:意味着非阻塞。 例如:A向B发送消息后,可以直接执行下面的代码,无需等待B的执行。
同步消息由实线箭头表示,异步消息由空心箭头表示。
自来电留言:
消息返回值:
2.5. 互动盒
UML 在 2.0 中向序列图添加了交互框。 交互框用于解决交互执行的条件和方式。 它允许在序列图中直接表示逻辑组件,并用于通过指定条件或子流程的应用领域来为任何生命线的任何部分定义特殊条件和子流程。 组合片段共有13种,其名称及含义如下:
不过我们只摘取几个常用的来讲一下,但本质用法是一样的。
2.5.1、alt(选择片段)
简单来说,就是用图中表达if/else。
2.5.2、选择
包含可能发生也可能不发生的序列;
只要我的成绩低于60分,妈妈就一定会打我。
如果大于这个值,就不会发生。
2.5.3. 环形
一个段被重复一定次数,并且段重复的条件可以在关键中指示。
2.5.4. 平行(Par)
理论就这样了,让我们继续看一个例子。
3.【示例】
下图简单描述了SpringMVC的执行流程。 这次我们的任务是将其转换为序列图。
时序图绘制如下:
4.自言自语
就我个人而言,我认为绘画非常有用,尤其是当我们自己设计一些东西时。 画完相关的图之后,思路就会清晰很多。
如果你刚刚开始使用xdm,我认为绘图比代码更能体现你的想法。 写作前可以先画图,让自己的想法更加清晰。
如果你是一名程序员,我认为绘图是一项基本操作。
今天的文章就到此为止。
大家好,我是博主宁在春:首页