[UML] 时序图介绍 —— 程序员(灵魂画手)必备画图技能之一
Posted 削尖的螺丝刀
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了[UML] 时序图介绍 —— 程序员(灵魂画手)必备画图技能之一相关的知识,希望对你有一定的参考价值。
统一建模语言(Unified Modeling Language,UML) 可分类成:
- 功能模型:从用户的角度展示系统的功能,包括用例图。
- 对象模型:采用对象,属性,操作,关联等概念展示系统的结构和基础,包括类别图、对象图。
- 动态模型:展现系统的内部行为。包括序列图,活动图,状态图。
——本文将主要针对时序图进行讲解
时序图
注意时序图的关键是整体按时间流程从上到下依次递减,观看的时候也要按整体递减的顺序一行一行看,而不是专注某一列递减来看
而且这个时序图的 复杂程度完全取决于你想展示多少细节,和其他UML图一个道理
[ 时序图主要分为以下这七个因素 ]
-
角色 —— 时序图开始的主角,可以是电脑、主机、小人等任意图标,一般以小人做为角色图标。
-
对象 —— 对象位于时序图的顶部,以一个矩形表示。对象的命名方式一般有三种:
- 对象名和类名。例如:华为手机:手机、loginServiceObject:LoginService;
- 只显示类名,不显示对象,即为一个匿名类。例如::手机、:LoginSservice。
- 只显示对象名,不显示类名。例如:华为手机:、loginServiceObject:。
-
生命线 —— 就是每个对象or角色下面那条垂直的虚线。
-
控制焦点(也叫激活框) —— 代表一段服务的运行时长。
-
消息 —— 有的人没有分那么细,就是实现就代表请求,虚线就代表返回结果,箭头没有特殊含义。但是也有人分的很细,这时候箭头就代表同步异步的意思,比如细分的话意思如下:
-
实线+实心箭头: 主动类型的同步调用或者请求
-
实现+大于号箭头:主动类型的异步调用或者请求
-
虚线+实心箭头: 收到请求后同步的返回过程
-
虚线+小于号箭头:收到请求后异步的返回过程
-
-
自关联消息 ——表示对自身内部的一个调用。以一个半闭合的长方形+下方实心剪头表示。
-
组合片段 —— 标示循环、判断、中断…的框框 专业的组合片段共有13种,名称及含义如下:
组合名称 | 组合含义 |
---|---|
ref | 引用其他地方定义的组合片段 |
alt | 在一组行为中根据特定的条件选择某个交互 |
opt | 表示一个可选的行为 |
break | 提供了和编程语言中的break类拟的机制 |
par | 支持交互片段的并发执行 |
seq | 强迫交互按照特定的顺序执行 |
strict | 明确定义了一组交互片段的执行顺序 |
neg | 用来标志不应该发生的交互 |
region | 标志在组合片段中先于其他交互片断发生的交互 |
ignore | 明确定义了交互片段不应该响应的消息 |
consider | 明确标志了应该被处理的消息 |
assert | 标志了在交互片段中作为事件唯一的合法继续者的操作数 |
loop | 说明交互片段会被重复执行 |
[ 时序图的概念其实并不复杂,这里举两个常见的时序图例子供大家学习 ]
🎏 你学废了吗?如果有帮助的话请不要吝啬免费的赞哦~
🍹 为辅佐您成为更强的灵魂画手, 这里再额外送您两张机票 :
参考资料:
https://www.cnblogs.com/54chensongxia/p/13236965.html
https://www.bilibili.com/video/BV12f4y127pp?from=search&seid=17891937048133807028
https://baike.baidu.com/item/%E7%BB%9F%E4%B8%80%E5%BB%BA%E6%A8%A1%E8%AF%AD%E8%A8%80/3160571?fromtitle=UML&fromid=446747&fr=aladdin
以上是关于[UML] 时序图介绍 —— 程序员(灵魂画手)必备画图技能之一的主要内容,如果未能解决你的问题,请参考以下文章
[UML] 类图介绍 —— 程序员(灵魂画手)必备画图技能之一
[UML] 流程图介绍 —— 程序员(灵魂画手)必备画图技能之一
[ 设计模式 ] 彻底搞懂建造者模式(生成器模式) —— 透彻理解