前言
最近因为工作需要学习了使用PlanUML画时序图,上一次学这个还是在大学的时候,以为这辈子再也不会遇到这个东西了,结果又遇到了,还是总结一下,下次再遇到就好看
PlantUML是什么
PlantUML是一款开源的UML图绘制工具,支持通过文本来生成图形,使用起来非常高效。可以支持时序图、类图、对象图、活动图、思维导图等图形的绘制。
插件
然后右键点击就可以新建puml文件作画时序图了
时序图效果
时序图(Sequence Diagram),是一种UML交互图。它通过描述对象之间发送消息的时间顺序显示多个对象之间的动态协作。通常,在系统的Oauth2的时候,第一步就是需要搞懂Oauth2的流程,这时候有个时序图就非常必要。我们先上最终成果:
代码及其属性解析
下例代码就可以生成上例时序图
@startuml
actor User as USER
participant UI as UI
participant Disclaimer as Disclaimer
participant Unconnectedpage as Unconnectedpage
participant ConnectedManager as ConnectedManager
queue 中间件 as "中间件"
skinparam sequenceMessageAlign center
autonumber
USER -> UI : click app
note over USER,UI: 这是一个备注
alt#Gold #LightBlue Successful
UI -> Disclaimer: 满足条件,show disclaimer dialog
else #Pink Failure
UI -->x USER :不满足条件,exit app
end
alt#Gold #LightBlue Successful
Disclaimer ->Unconnectedpage : accept
else #Pink Failure
Disclaimer -->x USER : refuse ,exit app
end
alt#Gold #LightBlue Successful
Unconnectedpage -> ConnectedManager: accept to open hotspot,regsiter listener
else #Pink Failure
Unconnectedpage -->x USER : refuse to open hotspot,exit app
end
ConnectedManager -> "中间件": send regsiter listener request
"中间件" -> "设备": start socket server to get ip
"设备" -> "中间件": start socket client to send ip
"中间件" -> "设备": start socket client to get regsiter listener
"设备" -> "中间件": start socket server to send regsiter listener
"中间件" -> ConnectedManager: receive regsiter listener massge
alt#Gold #LightBlue Successful
ConnectedManager -> UI :connected successfully ,refresh UI
else #Pink Failure
ConnectedManager -->x ConnectedManager: connected fail ,reconnection
end
@enduml
解析
actor
- actor User as USER 人形
participant
- participant UI as UI 默认形状 参与者
queue
- queue 中间件 as “中间件” 队列
skinparam sequenceMessageAlign center
- 箭头文字居中
autonumber
- 箭头添加序号
–>x
- UI -->x USER :不满足条件,exit app 虚线x
note over
- note over USER,UI: 这是一个备注 备注
alt
- 条件语句,是否
alt#Gold #LightBlue Successful
UI -> Disclaimer: 满足条件,show disclaimer dialog
else #Pink Failure
UI -->x USER :不满足条件,exit app
end
总结
PlanUML时序图是一个非常有用的工具,可以帮助开发者更好地理解系统中不同对象之间的交互方式和流程,从而有助于提高系统的设计质量和开发效率。PlanUML时序图是UML(Unified Modeling Language)建模语言中的一种图示,用于描述对象之间的交互和消息传递的时间顺序。
-
时序图中的“参与者”通常表示软件系统中的对象或模块。参与者之间的交互以及消息传递的时间顺序可以通过箭头和延迟线表示。
-
时序图中的箭头代表消息,可以是同步的或异步的。同步消息的发送方会等待接收方返回一个响应,而异步消息则不会。
-
时序图中的延迟线表示的是一段时间内的等待,可以是固定的时间或者是特定事件的发生。
-
PlanUML时序图还支持循环、条件和分支语句,这有助于描述更加复杂的交互场景。
-
PlanUML时序图的语法比较简单,可以通过一些基本的关键字和符号来描述大部分情况,如参与者、生命线、消息等。
-
要想绘制PlanUML时序图,可以使用一些开源的工具,如PlantUML、Draw.io等。这些工具可以帮助开发者更加高效地进行时序图的建模和绘制。文章来源:https://www.toymoban.com/news/detail-680741.html
总体来说,PlanUML时序图是一个非常有用的工具,可以帮助开发者更好地理解系统中不同对象之间的交互方式和流程,从而有助于提高系统的设计质量和开发效率。文章来源地址https://www.toymoban.com/news/detail-680741.html
到了这里,关于记一次PlanUML时序图学习的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!