程序员画时序图,个人强烈推荐用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
看下效果图:

简单的使用:知道这几个简单使用 就可以快速的画出一个时序图了。
-
A->B :注释 直接调用
-
A-->B :注释 回调调用
-
A->A :注释 自己类内函数调用
-
activate A 开始一个周期
-
deactivate A 结束一个周期
高级的使用:分割线、角色、进出消息、参与对象、间隔控件、注释、线条颜色、 Box 使用等
-
title:title 购物车功能时序图\n

-
box 使用:
title 购物车功能时序图\n box "购物车页面" #LightBlue participant CartFragment participant OperaAdapter end box
-
间隔:
... 用户操作后 ...
-
note: note left 和 note right
CartRepository -> CartRepository :changeOperaTypeList() note left: 根据当前购物车状态,生成功能列表
- 其他功能是对高标准的时序图进行的个性化的处理。 暂时用不到。有兴趣可以参考PlantUML的语法文档。
本文推荐程序员使用PlantUML来绘制时序图,因其编写简便且直观。示例展示了基本调用方式,如直接调用、回调调用和类内函数调用。此外,还提及了高级特性,如分割线、角色定义、消息传递、激活与结束周期、注释、线条颜色和Box的使用。通过提供的购物车功能时序图示例,读者可以快速上手PlantUML的高级功能。
3299

被折叠的 条评论
为什么被折叠?



