简介: CSDN博客专家,专注Android/Linux系统,分享多mic语音方案、音视频、编解码等技术,与大家一起成长!
优质专栏:Audio工程师进阶系列【原创干货持续更新中……】🚀
优质专栏:多媒体系统工程师系列【原创干货持续更新中……】🚀
人生格言: 人生从来没有捷径,只有行动才是治疗恐惧和懒惰的唯一良药.
1.前言
本篇目的:Plantuml之序列图语法介绍
2.PlantUML序列图介绍
- 使用 PlantUML 创建序列图非常简单。这种易用性主要归功于其语法的用户友好性,既直观又易记。
直观的语法: - 首先,用户非常欣赏 PlantUML 所采用的简单直观的语法。这种经过深思熟虑的设计意味着,即使是图表创建新手也能轻松快速地掌握基础知识。
- 文本与图形的关联:
-另一个显著特点是文本表示与图形输出之间非常相似。这种和谐的相关性可确保文本草稿准确地转化为图形图表,从而提供连贯、可预测的设计体验,在最终输出中不会出现令人不快的意外。 - 高效的制作过程:
文本和图形结果之间的紧密联系不仅简化了制作过程,还大大加快了制作速度。用户可从更简化的流程中获益,减少耗时的修改和调整要求。 - 起草时的可视化:
在起草文本的同时就能设想最终的图形结果,这是许多人认为非常宝贵的一项功能。它自然而然地促进了从初稿到最终呈现的顺利过渡,提高了工作效率,降低了出错的可能性。 - 易于编辑和修改:
重要的是,编辑现有图表的过程非常简便。由于图表是由文本生成的,用户会发现进行调整比使用图形工具修改图像要容易得多,也精确得多。 - PlantUML 为创建和编辑序列图提供了一种简单明了、用户友好的方法,既能满足新手的需求,也能满足经验丰富的设计人员的需求。它巧妙地利用文本输入的简便性来制作具有视觉描述性和准确性的图表,从而使自己成为图表创建工具包中的必备工具。
3.基本的例子
序列-> 用于绘制两个 参与者之间的信息。 参与者不必明确声明。
要有一个点状的箭头,就用-->
也可以用<- 和<-- 。 这不会改变绘图,但可能提高可读性。 注意,这只适用于顺序图,其他图的规则不同。
Copy to clipboard
Edit online
@startuml
Alice -> Bob: Authentication Request
Bob --> Alice: Authentication ResponseAlice -> Bob: Another authentication Request
Alice <-- Bob: Another authentication Response
@endumlWARNING This translation need to be updated. WARNING
4.声明参与者
如果使用关键字participant 来声明参与者,就可以对该参与者进行更多的控制。
声明的顺序将是(默认的)显示顺序。
使用这些其他的关键字来声明参与者,将改变参与者的表示形状。
actor(角色)
boundary(边界)
control(控制)
entity(实体)
database(数据库)
collections(集合)
queue(队列)@startuml
participant Participant as Foo
actor Actor as Foo1
boundary Boundary as Foo2
control Control as Foo3
entity Entity as Foo4
database Database as Foo5
collections Collections as Foo6
queue Queue as Foo7
Foo -> Foo1 : To actor
Foo -> Foo2 : To boundary
Foo -> Foo3 : To control
Foo -> Foo4 : To entity
Foo -> Foo5 : To database
Foo -> Foo6 : To collections
Foo -> Foo7: To queue
@enduml
使用as 关键字重命名参与者。
你也可以改变 演员或参与者的背景颜色。@startuml
actor Bob #red
' The only difference between actor
'and participant is the drawing
participant Alice
participant "I have a really\nlong name" as L #99FF99
/' You can also declare:participant L as "I have a really\nlong name" #99FF99'/Alice->Bob: Authentication Request
Bob->Alice: Authentication Response
Bob->L: Log transaction
@enduml
您可以使用order 关键字来定制参与者的显示顺序。
@startuml
participant Last order 30
participant Middle order 20
participant First order 10
@enduml
5.多行定义参与者
你可以对参与者使用多行定义。
@startuml
participant Participant [=Title----""打算""
]participant BobParticipant -> Bob
@enduml
6.在参与者中使用非字母
你可以使用引号来定义参与者。 而且你可以使用as 关键字来给这些参与者一个别名。
@startuml
Alice -> "Bob()" : Hello
"Bob()" -> "This is very\nlong" as Long
' You can also declare:
' "Bob()" -> Long as "This is very\nlong"
Long --> "Bob()" : ok
@enduml
7.给自己发消息
参与者可以给自己发信息
8.文本对齐
9.改变箭头样式
10.修改箭头颜色
11.对消息序列编号