7caf66893c6430fbb90161f385f517e3.png

兄弟,你还在为制作序列图烦恼吗?

今天,必须给你安利IDEA中几款“骚气”的UML插件,肯定能让你眼前一亮,牛的一逼~

19cacbf60d2d3d5e27f8326c093dee79.gif

相信有些同学刚入门,对这些概念不是太清楚,这里给大家介绍一下什么是序列图?

时序图(Sequence Diagram),又名序列图、循序图,是一种UML交互图。它通过描述对象之间发送消息的时间顺序显示多个对象之间的动态协作。它可以表示用例的行为顺序,当执行一个用例行为时,其中的每条消息对应一个类操作或状态机中引起转换的触发事件。百度百科

说得直白一点,时序图就是一个二维图(横轴表示对象,纵轴表示时间),显示对象之间的交互,这些对象是按时间顺序排列的,消息在各对象之间横向传递。

时序图中包括如下元素:角色,对象,生命线,控制焦点和消息;如下图所示

3177931f2953bd814d9514bcf530f2c2.png

有同学可能会问,画时序图有什么意义呢?

因为它离代码更近,方便开发、测试、产品理解整体的逻辑,不会一脸懵逼~

5e83397aa2a680dcb588a09e6e832419.png

我们以前怎么画时序图的呢?

有不少工具可以选择,比如VISO、Rational Rose、StarUML等

今天,咱们主要分享IDEA里面的插件~

1、SequenceDiagram

这个插件必须得分享,主要是它支持“一键”生成时序图,这个功能真得太赞了~

直接在插件中心,搜索“SequenceDiagram”关键字,便会出现下图的插件,点击安装即可。

5d407e8f4f39647833264147676f5aea.png

它是开源的,地址:https://github.com/Vanco/SequencePlugin

怎么使用呢?

选择某个具体的方法,点击右键菜单,选择“Sequence Diagram”

1a47e4312ceb3e1788da83f6bcb165c8.png

便可生成相应的时序图,如下图

0ea36d1e3768e9f8df3e3fb57cbbb452.png

具体功能:

1、通过点击生成时序图里面的方法或者类,便可跳转到相应的代码;

2、也可从图中移除不想要的类或者方法;

3、可以生成相应的图片。

说白了,安利该插件的目的,就是希望它能方便你读源码,了解脉络。

2、PlantUML integration

如果想更深入的了解UML,那么这个插件建议你必装,它完全支持PlantUml。

这里必须解释一下,PlantUml是一个支持快速绘制的开源项目。它自己定义了一套完整的语言用于实现UML关系图的描述,可以用Graphviz图形渲染库来生成各种UML图,实现了跨平台,跨编辑器~

e3a197ab3377cee2ffc1842a4efa82c3.png

就是像写代码一样,来绘制各种UML图,远离拖拽组件的工具,你说爽不爽~

直接在插件中心,搜索“PlantUML integration”关键字,便会出现下图的插件,点击安装即可。

f319c4770a5c658d1cc4f59704000953.png

它也是开源,地址:https://github.com/esteinberg/plantuml4idea

语言使用教程:https://plantuml.com/zh

如何使用?

点击右键“New”,“PlantUML File”,便会生成一个test.puml文件,如下图

c35fb3bb363277b3312a9dd7c8b4c313.png

在test.puml文件内,输入如下代码:

@startuml用户 -> 认证中心: 登录操作认证中心 -> 缓存: 存放(key=token+ip,value=token)token用户 用户 -> 认证中心: 下次访问头部携带token认证认证中心 其他服务 其他服务 -> 用户: 信息@enduml

便会生成下图的时序图

e099792f00b6b6eb0467c5a1956226f1.png

以后,你只需要传给别人一个几k的文件便可以了~

真的没想到,通过一个时序图,竟然给大伙儿瞎掰了连个插件出来,好了,就写到这里吧~

赶快去试试吧,老铁,别忘了三连哦~

91a249088c43ffb0865538e6fe5da56e.png热门推荐:

  • 太火了!MyBatis-Plus为啥这么牛?
  • 无语!快手在厕所里装了个计时器~
  • 牛逼,微信更新!支持双开,爽~
5aec6aee07531cf778bc0845aa9a0dc9.png

最后,推荐给大家一个有趣有料的公众号:程序员Tools,该公众号主要为大家分享有趣有料的开发者工具,还有老鬼给你带路,永不迷路~

0c2275ed6b7a39e3820b25427823e77a.png

扫描关注,永不迷路

2c101c1c3e72e35993b23af3449d0210.gif点击
Logo

一站式 AI 云服务平台

更多推荐