前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >架构师的好帮手-PlantUML

架构师的好帮手-PlantUML

作者头像
热心的大肚皮
发布2023-10-25 18:55:58
2760
发布2023-10-25 18:55:58
举报

大家好,我是热心的大肚皮,皮哥。

大家在设计方案时是不是还在用ProcessOn这类工具来绘制,是不是时常还在为调整样式发愁,今天给大家推荐一个idea的插件,画图更高效。

PlantUML简介

PlantUML是一款开源的UML图绘制工具,支持通过文本来生成图形,使用起来非常高效。可以支持时序图、类图、对象图、活动图、思维导图、C4架构等图形的绘制。

安装

通过在IDEA中安装插件来使用PlantUML即可。

如何使用?

PlantUML支持时序图、用例图、类图、活动图、组件图、状态图、对象图、部署图、定时图、Network、Wireframe、Archimate、Gantt、MindMap、WBS、JSON、YAML。

时序图

新建方式

步骤1、选择新建PlantUML File

步骤2、选择时序图

使用案例

以Oauth2的时序图为例。代码如下。

代码语言:javascript
复制
@startuml
title Oauth2令牌颁发之授权码模式

actor User as user
participant "User Agent" as userAgent
participant "Client" as client
participant "Auth Login" as login
participant "Auth Server" as server

autonumber
user->userAgent:访问客户端
activate userAgent
userAgent->login:重定向到授权页面+clientId+redirectUrl
activate login
login->server:用户名+密码+clientId+redirectUrl
activate server
server-->login:返回授权码
login-->userAgent:重定向到redirectUrl+授权码code
deactivate login
userAgent->client:使用授权码code换取令牌
activate client
client->server:授权码code+clientId+clientSecret
server-->client:颁发访问令牌accessToken+refreshToken
deactivate server
client-->userAgent:返回访问和刷新令牌
deactivate client
userAgent--> user:令牌颁发完成
deactivate userAgent
@enduml

效果如下。

  • 本时序图关键说明如下:
    • title可以用于指定UML图的标题;
    • 通过actor可以声明人形的参与者;
    • 通过participant可以声明普通类型的参与者;
    • 通过as可以给参与者取别名;
    • 通过->可以绘制参与者之间的关系,虚线箭头可以使用-->;
    • 在每个参与者关系后面,可以使用:给关系添加说明;
    • 通过autonumber我们可以给参与者关系自动添加序号;
    • 通过activate和deactivate可以指定参与者的生命线。
  • 这里还有个比较神奇的功能,当我们右键时序图时,可以生成一个在线访问的链接;

总结

以上只是简单介绍了下怎么使用及支持类型,更多强大的功能看官网(https://plantuml.com/zh/sitemap)。

小贴士

使用PlantUML的时候,常常会遇到流程过大,导致图片生成失败或者图片不清晰,怎么解决呢?告诉大家各小妙招。

首先在@startuml下添加下面代码,调整大小和精度。

代码语言:javascript
复制
@startuml

skinparam dpi 750
scale 3500 width
scale 3000 height
skinparam wrapWidth 100

@enduml

然后打开设置。

最后修改限制大小即可。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2023-10-19,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 程序猿日常笔记 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • PlantUML简介
  • 安装
  • 如何使用?
    • 时序图
      • 新建方式
      • 使用案例
  • 总结
  • 小贴士
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档