使用PlantUML画时序图

本文推荐程序员使用PlantUML来绘制时序图,因其编写简便且直观。示例展示了基本调用方式,如直接调用、回调调用和类内函数调用。此外,还提及了高级特性,如分割线、角色定义、消息传递、激活与结束周期、注释、线条颜色和Box的使用。通过提供的购物车功能时序图示例,读者可以快速上手PlantUML的高级功能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

程序员画时序图,个人强烈推荐用PlantUML, 写起来方便,直观.

先写一个demo看下。

@startuml
-> CartFragment: 初始化页面
activate CartFragment
CartFragment -> OperaAdapter: 初始化适配器
activate OperaAdapter
CartFragment -> CartViewModel : 注册监听 getOperaTypeList()
activate CartViewModel
CartViewModel -> CartRepository : 注册监听getOperaTypeList()
activate CartRepository
CartRepository -> CartRepository :changeOperaTypeList()根据当前购物车状态,生成功能列表
CartViewModel <-- CartRepository: 回调返回数据
deactivate CartRepository
CartFragment <-- CartViewModel: 回调返回数据
deactivate CartViewModel
CartFragment -> OperaAdapter:setList() 设置数据源
CartFragment <- OperaAdapter: 点击某一项
deactivate OperaAdapter
CartFragment -> CartFragment : onSelected()
CartFragment -> OtherPage: 跳转显示其他页面
deactivate  CartFragment
@enduml

看下效果图:

 

简单的使用:知道这几个简单使用 就可以快速的画出一个时序图了。

  1. A->B :注释 直接调用

  2. A-->B :注释 回调调用

  3. A->A :注释 自己类内函数调用

  4. activate A 开始一个周期

  5. deactivate A 结束一个周期

高级的使用:分割线、角色、进出消息、参与对象、间隔控件、注释、线条颜色、 Box 使用等

  1. title:title 购物车功能时序图\n

  2. box 使用:

    title  购物车功能时序图\n
    box "购物车页面" #LightBlue
    participant CartFragment
    participant OperaAdapter
    end box

     

  3. 间隔:

    ... 用户操作后 ...

  4. note: note left 和 note right

    CartRepository -> CartRepository :changeOperaTypeList()
    note left: 根据当前购物车状态,生成功能列表

  5. 其他功能是对高标准的时序图进行的个性化的处理。 暂时用不到。有兴趣可以参考PlantUML的语法文档。

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值