强烈推荐,好用的时序图开源插件PlantUML!

前言

每开发一个新需求,做系统设计时,系统时序图一般都少不了,你用的画图软件有没有给你带来一些问题呢?

1、比如不美观,图形线条不好对齐,比如下面这个:

这个图没有完全对齐,而且是我比较费劲去尽量对齐了,线条都需要自己一根根对齐,比较麻烦,画图的时间都用在对齐线条上去了。

2、逻辑判断选择不好表示,比如if/else,下面是redis两种复制模式,应该是根据配置决定的,但是没法有逻辑选择

3、没有循环处理

4、想给文字或者某个核心流程加上颜色

5、时序上的流程需要手动去编号,也很麻烦,比如下面的图

今天要介绍的这个插件软件,上面的问题都可以解决。如果你也遇到了上面的问题,强烈推荐你收藏用起来,看下面画的OpenFeign负载均衡的核心时序图。

PlantUML介绍与优势

PlantUML是一个开源项目,官网:https://plantuml.com/sequence-diagram

它既支持常用的uml图,也支持非uml图,比如思维导图,我最常用的就是时序图

我觉得它有如下优点:

1、语法简单,快速上手,可视化制作

2、图形线条关联是自动关联的,不需要手动关联

3、支持循环if/else等逻辑表示

4、制作的图形更美观和和谐

5、修改比较容易,有些制作完成导出成图片了不好改,PlatUML可以改

PlantUML案例

1、声明参与者

2、发送消息和返回消息

3、if/else表示

4、关键流程加颜色

5、自动编号

具体的画图代码:

uml 复制代码
autonumber
actor 普通用户 as person
participant 用户服务 as user
participant 订单服务 as order
participant 支付服务 as pay

person -> user:登录系统
person<--user: 登录结果

alt 登录失败
person<--user: 提示失败,不可下单
loop 用户重试
person -> user:登录系统
person<--user: 登录结果
end

else #Gold 登录成功
person->order:下单
person<--order:下单成功
person->pay:支付
person<--pay:支付成功
end

@enduml

PlantUML总结

使用 PlantUML 创建序列图非常简单。这种易用性主要归功于其语法的用户友好性,既直观又易记。

你如果是一个新入职场的朋友,掌握这个工具也能画出很美观的时序图,是不是会很开心呢?刚工作时候,我是比较困惑的?没有找到好的画图软件,直到知道了PlantUML,还是很好用的,不仅可以在intellij idea里面使用,confluence里面也有插件支持的,在公司办公工作中也用的到。

这个文章如果对你有帮助,收藏关注我们,一起学习技术干货,学习好用的工具。

相关推荐
颜淡慕潇34 分钟前
【K8S问题系列 |1 】Kubernetes 中 NodePort 类型的 Service 无法访问【已解决】
后端·云原生·容器·kubernetes·问题解决
熊的猫1 小时前
JS 中的类型 & 类型判断 & 类型转换
前端·javascript·vue.js·chrome·react.js·前端框架·node.js
瑶琴AI前端1 小时前
uniapp组件实现省市区三级联动选择
java·前端·uni-app
会发光的猪。1 小时前
如何在vscode中安装git详细新手教程
前端·ide·git·vscode
尘浮生1 小时前
Java项目实战II基于Spring Boot的光影视频平台(开发文档+数据库+源码)
java·开发语言·数据库·spring boot·后端·maven·intellij-idea
尚学教辅学习资料2 小时前
基于SpringBoot的医药管理系统+LW示例参考
java·spring boot·后端·java毕业设计·医药管理
我要洋人死2 小时前
导航栏及下拉菜单的实现
前端·css·css3
科技探秘人3 小时前
Chrome与火狐哪个浏览器的隐私追踪功能更好
前端·chrome
monkey_meng3 小时前
【Rust中的迭代器】
开发语言·后端·rust
科技探秘人3 小时前
Chrome与傲游浏览器性能与功能的深度对比
前端·chrome