用文字“画出”时序图:用 AI+Mermaid.js 解决交互过程中的问题
什么是时序图
序列图是一种用于描述对象之间在时间上的交互顺序的图表。
它可以展示对象之间是如何相互作用的,以及这些交互的顺序。
什么是Mermaid
Mermaid.js是一个开源项目,它允许你通过简单的文本代码来绘制图表。
无论你是开发者、学生还是普通用户,它都能帮助你将复杂的信息以直观和易懂的方式呈现出来。
什么是中文Mermaid
来自 min2k 的 中文Mermaid 在Mermaid的基础上引入了AI技术,实现了自动生成时序图的功能。
现在的用户只需输入内容,它就会自动将其转化为时序图。
这大大地提高了工作效率,省去了手写代码的麻烦。
访问 中文Mermaid 体验 AI + Mermaid,提升你的效率,解决你的问题。
Mermaid时序图的示例
文本代码
sequenceDiagram
participant Client
participant Server
Client ->> Server:SYN
note right of Client:发送SYN请求
Server -->> Client:SYN-ACK
note right of Server:回复SYN-ACK
Client ->> Server:ACK
note right of Client:确认SYN-ACK
note over Client,Server:TCP连接已建立
Client -->> Server:数据传输
note right of Client:发送数据
Server -->> Client:数据传输
note right of Server:接收数据
Client -->> Server:FIN
note right of Client:发送FIN请求
Server -->> Client:ACK
note right of Server:确认FIN请求
Server -->> Client:FIN
note right of Server:发送FIN请求
Client -->> Server:ACK
note right of Client:确认FIN请求
note over Client,Server:TCP连接已关闭
由代码绘制出来的图表
sequenceDiagram
participant Client
participant Server
Client ->> Server:SYN
note right of Client:发送SYN请求
Server -->> Client:SYN-ACK
note right of Server:回复SYN-ACK
Client ->> Server:ACK
note right of Client:确认SYN-ACK
note over Client,Server:TCP连接已建立
Client -->> Server:数据传输
note right of Client:发送数据
Server -->> Client:数据传输
note right of Server:接收数据
Client -->> Server:FIN
note right of Client:发送FIN请求
Server -->> Client:ACK
note right of Server:确认FIN请求
Server -->> Client:FIN
note right of Server:发送FIN请求
Client -->> Server:ACK
note right of Client:确认FIN请求
note over Client,Server:TCP连接已关闭
上图完整地展示了TCP协议在从连接到关闭的整个交互过程。
Mermaid时序图的语法解释
第1行是图表类型,默认是:sequenceDiagram
接下来的 participant 定义了此次时序图的参与者,分别有 Client 和 Server
接下来的 Client ->> Server:SYN,表示从 Client 绘制一条实心线到 Sever 上,其线的描述为:SYN
接下来的 note right of Client:发送SYN请求,表示添加一个注解,放在 Client 的右侧,内容为:发送SYN请求
最后的 note over Client,Server:TCP连接已关闭,表示添加一个注解,横跨在 Client 和 Sever 之上,内容为:TCP连接已关闭
以上就是Mermaid时序图的常用语法。
若你不想手动编写代码的话,可以使用 min2k 的 中文Mermaid 来自动生成时序图。