介绍

好用的免费画图插件,兼容vscode、IDEA等大牌IDE,使用编写代码的方式自动生成UML图形。官方中文文档:https://plantuml.com/zh/

安装方式

以IDEA为例,直接在Plugin -> Marketplace中安装即可,vscode同理。

入门

在文件目录中新建文件,可以看到PlantUML File,新建此文件,选中你需要的UML图形。

UML绘图语法规则

全局规则

作用域

puml需要将代码写在@startuml@enduml之间才能生效。

顺序图

箭头

@startuml
Client -> Server: 建立连接
'       ↓这里为了可读性也可以反过来写成: <--
Server --> Client: 数据交互
Client --> Server: 数据交互
Server -> Client: 断开连接
@enduml

箭头样式:

No 字段 表示
1 x 丢失信息,箭头尾处为x
2 > 实心箭头
3 >> 虚心箭头
4 - 实线
5 虚线
6 <-> 双向箭头

声明参与者

可以通过声明参与者的方式,为参与者更改属性、赋予别名as(一旦赋予别名后续不可再使用原名)、设置权重order(数量越小越靠前)。

@startuml
participant Client as c order 1
participant Server as s order 2
c -> s: 建立连接
s --> c: 数据交互
c --> s: 数据交互
s -> c: 断开连接
@enduml

可以使用的参与者属性:

No 字段 表示
1 participant 参与者
2 actor 角色
3 control 控制
4 entity 实体
5 database 数据库
6 collections 集合
7 queue 队列
8 boundary 边界

文字对齐

skinparam sequenceMessageAlign center

消息序号

autonumber 1.1,指定自增数字,默认增加最后一个数字,可指定自增数字位。

@startuml
'https://plantuml.com/sequence-diagram
participant Client as c order 1
participant Server as s order 2
autonumber 1.1
c -[#red]> s: 建立连接
autonumber inc A
s --> c: 数据交互
c --> s: 数据交互
autonumber inc A
s -> c: 断开连接
@enduml

注释

note left:、 note right: 单行注释或者使用 note left ... endnote多行注释。

分隔符

== 重复 ==... 重复 ...

间距

|||设置间距,或指定间距||45||

生命线

activate c初始化生命,deactivate c结束生命线,可以嵌套使用。

返回

生命线可以返回内容,使用return返回,同时可以配合autoactivate实现自动生命线声明与销毁。

快捷创建、销毁、生命线/实例

@startuml
alice -> bob ++ : hello
bob -> bob ++ : self call
bob -> bib ++  #005500 : hello
bob -> george ** : create
return done
return rc
bob -> george !! : delete
return success
@enduml

也可以同时进行:

@startuml
alice   ->  bob     ++   : hello1
bob     ->  charlie --++ : hello2
charlie --> alice   --   : ok
@enduml

活动图

箭头

  • -->代表普通箭头
  • -[labels]->代表带标签的箭头
  • -left->指定方向的箭头(down, up, left, right)

开始与结束

  • (*)开始/结束
  • start/stop开始/结束

plantuml介绍与使用相关推荐

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

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

  2. plantuml样式_PlantUML 简明教程

    PlantUML 简介 PlantUML 是一个开源项目,支持快速绘制时序图.用例图.类图.活动图.组件图.状态图.对象图.部署图等.同时还支持非 UML 图的甘特图.架构图等.例如下面等用例图: @ ...

  3. 使用 Sublime + PlantUML 高效地画图

    程序员难免要经常画流程图,状态图,时序图等.以前经常用 visio 画,经常为矩形画多大,摆放在哪等问题费脑筋.有时候修改文字后,为了较好的显示效果不得不再去修改图形.今天介绍的工具是如何使用 Sub ...

  4. cassandra可视化工具_程序员绘图工具——PlantUML

    在工作中经常会编写技术文档,用专业的图形(用例图.时序图.ER图等等)能够更加准确表达我们的想法,别一段乏味的文字更加有意义,也便于别人理解. 虽然现在有很多类似viso之类的可视化画图工具,但是还是 ...

  5. 流程图中的虚线含义_还在为画流程图烦恼,焦躁?介绍一款画图神器,让你爱上画图!...

    在团队协作过程中最常见的就是开会.开会最常用的就是图,而图中最常见的就是流程图,时序图,类图等下面介绍一款画图神器:PlantUML PlantUML是一个开源项目,支持快速绘制: 时序图 用例图 类 ...

  6. 使用VSCode+PlantUML+C4-Model快速画架构图

    使用VSCode+PlantUML+C4-Model快速画架构图 关于C4-Model 最近在看C4-Model,它的理念很实用,架构图要明确面向人群,根据面向人群的不同,产出四幅图来描述一个系统或者 ...

  7. 使用PlantUML和VS Code轻松实现UML

    目录 介绍 基本的UML类型 结构UML图 行为UML图 可用的建模工具 PlantUML的救援 Visual Studio Code集成 编写少数模型 类图 活动图 导出文档 结论 介绍 UML代表 ...

  8. [转]PlantUML画类图、流程图、时序图使用详解

    程序员难免要经常画流程图,状态图,时序图等.以前经常用 visio 画,经常为矩形画多大,摆放在哪等问题费脑筋.有时候修改文字后,为了较好的显示效果不得不再去修改图形.今天介绍的工具是如何使用 Pla ...

  9. 捣鼓PlantUML(三、时序图)

    简单介绍 时序图(Sequence Diagram),又名序列图.循序图.顺序图,是一种UML交互图.它通过描述对象之间发送消息的时间顺序显示多个对象之间的动态协作.它可以表示用例的行为顺序,当执行一 ...

最新文章

  1. R假设检验之Grubbs异常检测(Grubbs’ Test)
  2. Loj 【CQOI 2006】简单题,mmp
  3. php重定向和伪静态,Apache301重定向和伪静态设置教程(wp程序为例)
  4. python做逻辑回归r2_利用python实现逻辑回归
  5. 快来了解下Snappy Ubuntu是什么
  6. std::kill_dependency
  7. espresso java_java – Espresso单击菜单项
  8. vmware下安装mac os虚拟机问题,最后还是最终攻克了被一个小失误给陷害了
  9. Hexo及Next主题配置(最新版)
  10. 计算机类耗品有哪些,办公用品和办公耗材清单有哪些?
  11. 祈澈姑娘:为自己代盐
  12. 解决Cortana显示空白的情况
  13. PACS系统源码 影像管理系统源码(PACS)
  14. 郝斌c语言视频错误的在哪里,根据郝斌C语言视频学的解简单一元二次方程的代码总是敲错,求大神帮忙看看...
  15. 【内网安全-隧道技术】SMB、ICMP、DNS隧道、SSH协议
  16. 中兴推“小兴看看”,诠释智能家电的真谛
  17. 使用UltraISO刻录DMG光盘映像
  18. 基于MATLAB GUI的魔方三维动态还原仿真程序
  19. 磁盘性能--IOPS和吞吐量
  20. 2021年ONNX开发者大会即将召开

热门文章

  1. 线上营销和线下营销如何完美结合?
  2. 利用AI+大数据的方式分析恶意样本(十三)
  3. 抢红包算法 c++_字节跳动|垂直策略|算法岗招聘
  4. 判断魔方阵c语言程序设计_魔方阵算法及C语言实现
  5. 四均线交易系统(Four Set of MA Crossover System)
  6. STM32SPI通信原理
  7. 半小时学会LevelDB原理及应用
  8. 漫画丨什么是边缘云?
  9. 一个高性能服务器需要关注的地方
  10. 2020谷歌学术指标出炉,CVPR成AI学术会议总榜第一名