目录

一、简介

二、安装

1.1 安装插件到PyCharm

2.2 验证

2.2.1 插件检查是否安装

2.2.2 新建PlantUML文件


一、简介

Github地址:https://github.com/plantuml/plantuml

官方网站:Sequence Diagram syntax and features

在线使用:PlantUMLServer

PlantUML中文文档:PlantUML_Language_Reference_Guide_zh.pdf

链接: https://pan.baidu.com/s/1QDCnQUheO0pIrbtUzmY97A 提取码: n2gd

PlantUML 是一个开源项目,支持快速绘制:

• 时序图• 用例图 • 类图 • 对象图 • 活动图 • 组件图 • 部署图 • 状态图 • 定时图

同时还支持以下非 UML 图:

• JSON Data
• YAML Data
• Network diagram (nwdiag) • 线框图形界面
• 架构图
• 规范和描述语言 (SDL)
• Ditaa diagram
• 甘特图
• MindMap diagram
• Work Breakdown Structure diagram
• 以 AsciiMath 或 JLaTeXMath 符号的数学公式 • Entity Relationship diagram

通过简单直观的语言来定义这些示意图。

二、安装

一般的IDE都支持PlantUML插件,比如:PyCharm和VScode,下面以PyCharm安装为例说明:

1.1 安装插件到PyCharm

假设已经安装好PyCharm,插件地址:PlantUML integration - IntelliJ IDEs Plugin | Marketplace

进入插件页面后,选择当前编译器版本;

点击后网页右下角出现提示:

这时回到 Pycharm 内,会出现插件安装弹框,点击 OK

2.2 验证

2.2.1 插件检查是否安装

预期在插件的安装栏内就会出现该插件

2.2.2 新建PlantUML文件

Ps:最好重启下PyCharm,新建PlatUML文件测试,默认文件名以.puml结尾

(1)简单的一些用法

demo1.puml,代码如下:

@startuml
'https://plantuml.com/sequence-diagram
autonumber
用户 -> 认证中心: 登录操作
认证中心 -> 缓存: 存放(key=token+ip,value=token)token用户 <- 认证中心: 认证成功返回token
用户 -> 认证中心: 下次访问头部携带token认证
认证中心 <- 缓存: key=token+ip获取token
其它服务 <-  认证中心: 存在且校验成功则跳转到用户请求的其他服务
其他服务 -> 用户: 信息
@enduml

效果如下图:

(2)高级的一些用法,如声明参与者

使用 participant 关键字来声明一个参与者可以使你对参与者做出更多控制。 关键字 participant 用于改变参与者的先后顺序。

你也可以使用下面这些关键字来声明参与者,这会改变参与者的外观:

• actor(角色)
• boundary(边界)
• control(控制)
• entity(实体)
• database(数据库)
• collections(集合)
• queue(队列)

demo2.puml,代码如下:

@startuml
participant participant as Foo
actor       actor       as Foo1
boundary    boundary    as Foo2
control     control     as Foo3
entity      entity      as Foo4
database    database    as Foo5
collections collections as Foo6
queue       queue       as Foo7
Foo -> Foo1 : To actor
Foo -> Foo2 : To boundary
Foo -> Foo3 : To control
Foo -> Foo4 : To entity
Foo -> Foo5 : To database
Foo -> Foo6 : To collections
Foo -> Foo7 : To queue
@enduml

效果如下图:

使用 PlantUML 绘制时序图相关推荐

  1. PlantUML 绘制时序图

    PlantUML系列文章 PlantUML绘制活动图https://blog.csdn.net/zhangwei_david/article/details/125507374PlantUML绘制类图 ...

  2. PlantUML:一款让你爽到起飞的高效代码绘制时序图工具

    背景 对于工作中遇到一些复杂的业务逻辑场景,需要借助图形工具去准确的表达,会更高效的理解和梳理复杂的逻辑,同时在跟领导和同事汇报时也更能清晰.准确.快速的表达想法以及方案.比如梳理源码常用的时序图以及 ...

  3. PlantUML绘制类图

    系列文章目录 PlantUML绘制活动图https://blog.csdn.net/zhangwei_david/article/details/125507374 PlantUML 绘制时序图htt ...

  4. PlantUML绘制活动图

    PlantUML系列文章 PlantUML 绘制时序图https://blog.csdn.net/zhangwei_david/article/details/125451459 PlantUML绘制 ...

  5. Visio绘制时序图

    为什么要绘制时序图? 我们编码的时候,知道有的用例的业务逻辑按照比较确定的时间先后顺序进行展开.这时候,我们就需要知道我们设计的系统中的不同类之间传递消息(可以认为是不同对象函数间的调用)要按照怎么样 ...

  6. 程序员进阶神器,ProcessOn绘制时序图

    目录 一.什么是时序图? 二.时序图的组成元素 1.角色(Actor) 2.对象(Object) 3.生命线(LifeLine) 4.激活期(Activation) 5.消息(Message) 三.时 ...

  7. UML图绘制-----时序图的画法

    UML图绘制-----时序图的画法 1.什么是时序图 时序图用于描述对象之间的传递消息的时间顺序, 即用例中的行为顺序 主要用来更直观的表现各个对象交互的时间顺序,将体现的重点放在 以时间为参照,各个 ...

  8. 【原创】Visio软件绘图功能极佳----记我的第一次Visio软件绘制时序图

    在Verilog语语言描述前,我推荐的做法是:绘制 模块框图+模块连接图+整体时序图: 绘制模块方框图的好处是:审题之后有了思路,将整体划分为几组模块,各组模块各司其职: 绘制模块连接图的好处是:可以 ...

  9. rational rose 绘制时序图

    rational rose 绘制时序图 动态图概念 : 从静态图中抽取瞬间值的变化描述系统随时间变化的行为, 动态图包括交互图活动图状态图, 这篇博客研究交互图 包括时序图和协作图; -- 时序图 : ...

最新文章

  1. Java 泛型总结(三):通配符的使用
  2. Ext JS - Combobox 加载下拉框数据 级联下拉框
  3. android开发之 SQLite(数据库)
  4. easyuefi无法安装只能在基于_SOLIDWORKS2018安装时VC2015安装失败的解决方法
  5. 重磅综述:三万字长文读懂单细胞RNA测序分析的最佳实践教程 (原理、代码和评述)
  6. ubuntu一键安装LAMP 及一键卸载
  7. 问答列表html,HTML这个样子的图文列表怎么写
  8. 设备log导入oracle,oracle imp 导入数据库出错 请看log!
  9. avast捆绑_如何摆脱Avast的通知,声音和捆绑软件
  10. ubantu下安装搜狗输入法
  11. 区块链开发之验证ETH地址的有效性
  12. 8.4v双节锂电池专业充电ic(FS4062A)
  13. 什么是“个人商业模式”?就是一个人出售自己时间的方式
  14. PCM开发板模块实验指导--SPI读写PSRAM64实验
  15. 工训赛:从参赛到“弃赛”
  16. 海信E8H Mini LED 电视评测
  17. Wireshark配置显示IP地理位置信息
  18. 语雀知识库 2.0 上线,让表达更自由
  19. 入行测试已经4年了 ,进华为后迷茫了3个月,做完这个项目我决定离职....
  20. Git学习5:Git常用命令简明用法

热门文章

  1. 12.04 安装svn
  2. [Linux] Ubuntu13.04 搭建OK6410-A开发板的开发环境
  3. f5在运营商计费系统中的版本升级割接详细步骤
  4. TCMalloc : Thread-Caching Malloc
  5. 【免费毕设】ASP.NET 网上选课系统的设计与实现(源代码+lunwen)
  6. python difflib模块_Python一起来找茬—difflib模块
  7. 计算机信息处理工具教案设计,《信息和信息处理工具》教案设计
  8. ios java 通信_AES加密解密 -- iOS、Java之间的互相通信
  9. rdlc mysql_RDLC 报表开发
  10. 2018渭源县计算机老师,2018年甘肃定西渭源县选调教师公告【招60人】