强烈推荐,好用的时序图开源插件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里面也有插件支持的,在公司办公工作中也用的到。

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

相关推荐
freejackman18 分钟前
MySQL 基础入门
数据库·后端·sql·mysql
Hamm26 分钟前
用一种全新的方式来实现i18n,和魔法字符串彻底说拜拜
前端·vue.js·typescript
Asthenia041226 分钟前
一名实习生的复盘:技术与规划的经验教训
后端
Asthenia041240 分钟前
从面试问题看端口连通性:Ping、TCP/UDP与业务实践
后端
摸鱼仙人~42 分钟前
React: hook相当于函数吗?
前端·javascript·react.js
百锦再43 分钟前
React编程高级主题:错误处理(Error Handling)
前端·javascript·react.js·前端框架·vue·web·angular
阿里巴巴首席技术官44 分钟前
CSS 高级用法
前端·css
程序员一诺1 小时前
【爬虫开发】爬虫开发从0到1全知识教程第14篇:scrapy爬虫框架,介绍【附代码文档】
后端·爬虫·python·数据
墨绿色的摆渡人1 小时前
论文笔记(七十五)Auto-Encoding Variational Bayes
前端·论文阅读·chrome
Asthenia04121 小时前
Spring事件机制:微服务架构下的子服务内部解耦合/多场景代码分析
后端