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

在团队协作过程中最常见的就是开会、开会最常用的就是图,而图中最常见的就是流程图,时序图,类图等下面介绍一款画图神器:PlantUML

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

  • 时序图
  • 用例图
  • 类图
  • 活动图
  • 组件图
  • 状态图
  • 对象图
  • 部署图
  • 定时图
附上地址: http://plantuml.com

在线画图

假如您和我一样也是个急性子 :-)

尝试 PlantUML 最简单快捷的方法就是使用在线编辑服务.

http://www.plantuml.com/plantuml/uml

  • 1.打开在线编辑服务
a4ee264cc0127d88848bc35fbc15b328.png

在线编辑服务

  • 2.输入代码:
@startumlBob -> Alice : hello@enduml
  • 3.点击submit即可
23347bf778c3df01e209e348df332bb7.png

第一个UML图

本地画图

  • 安装PlantUML
 软件要求: Java : 是运行PlantUML的必需条件 (如果想绘制 除 时序图和活动图以外的图, 就需要安装 Graphviz)
  • 1.下载plantuml.jar

jar下载地址:http://sourceforge.net/projects/plantuml/files/plantuml.jar/download

  • 2.双击 plantuml.jar 文件(或者: java -jar plantuml.jar ), 启动 plantUML界面. 可以点击"Change Directory"按钮 来重新指定工作目录. 保持界面处于打开状态,不要关闭.
2de926a2476396ae9e8a035f78d3d651.png

uml界面

  • 3.构建第一个本地UML图

在工作目录中建立一个demo.txt内容如下:

@startumlAlice -> Bob: test@enduml
  • 4.打开文件所在目录就可以看到生成的图片:demo.png

注: 图片的生成是实时的,可以边改边看哦!

090a8ed755d72b33cd7d2a1cacca245f.png

看到这里,你是不是觉得爱上画图了?

我想你是爱我的我猜你也舍不得但是怎么说 总觉得我们之间留了太多空白格……

还没有爱上?怎么又是要打开网址,又是下载jar, 这么麻烦?

没关系, 下面我们再来介绍一个IDEA插件。

IntelliJ IDEA PLUGIN

  • 1.打开IDEA :

Settings -> Plugins -> Browse repositories -> 输入:Plantuml integration -> Install

(注:重启生效)

d015b4c82ec40b044452c736924855fc.png

安装plugin

  • 2.右键-> New-> PlantUML FIle-> 输入Name -> ok
396f79723f7e41c628c14f01cdd31dff.png

创建uml1

cbae61ffff9b8706c9bb463d8ccca648.png

创建uml2

  • 3.打开demo.puml
@startumlAlice -> Bob: Authentication RequestBob --> Alice: Authentication ResponseAlice -> Bob: Another authentication RequestAlice 
53bc645122be7c734f41ead360d2a1d6.png

这时候我们就可以看到,左边为代码, 右边为UML图。

怎么画图

看完上面的安装使用,大家可能发现了,画图的方式是不是变了?

平时画图都是通过鼠标,拖出各种图

现在而是通过代码的形式在生成

对于同为程序员的我来说,写代码跟画图来比,我还是更热衷于通过代码来实现

  • 时序图的语法于功能

修改箭头样式

方式有以下几种:

  • 表示一条丢失的消息:末尾加 x
  • 让箭头只有上半部分或者下半部分:将替换成或者 /
  • 细箭头:将箭头标记写两次 (如 >> 或 //)
  • 虚线箭头:用 -- 替代 -
  • 箭头末尾加圈:->o
  • 双向箭头:
@startumlBob ->x AliceBob -> AliceBob ->> AliceBob - AliceBob - AliceBob //-- AliceBob ->o AliceBob o-- AliceBob  AliceBob o Alice@enduml
ab423310321553222c2a7b8e762355f6.png

修改箭头颜色

@startumlBob -[#red]> Alice : helloAlice -[#0000FF]->Bob : ok@enduml
0db1f32723bc481936911df0ad7b8053.png

声明参与者

  • actor
  • boundary
  • control
  • entity
  • database
@startumlactor Foo1boundary Foo2control Foo3entity Foo4database Foo5collections Foo6Foo1 -> Foo2 : To boundaryFoo1 -> Foo3 : To controlFoo1 -> Foo4 : To entityFoo1 -> Foo5 : To databaseFoo1 -> Foo6 : To collections@enduml
bc6171335206d74b1d3a291dec462499.png

分割示意图

@startumlAlice -> Bob : message 1Alice -> Bob : message 2newpageAlice -> Bob : message 3Alice -> Bob : message 4newpage A title for thelast pageAlice -> Bob : message 5Alice -> Bob : message 6@enduml
1526ccff3ba17cad8f034309a9295f54.png

组合消息

@startumlAlice -> Bob: Authentication Requestalt successful caseBob -> Alice: Authentication Acceptedelse some kind of failureBob -> Alice: Authentication Failuregroup My own labelAlice -> Log : Log attack start loop 1000 times Alice -> Bob: DNS Attack endAlice -> Log : Log attack endendelse Another type of failure Bob -> Alice: Please repeat end@enduml
7f9288b4ec50bc721ec3110f23c66663.png

给消息添加注释

@startumlAlice->Bob : hellonote left: this is a first noteBob->Alice : oknote right: this is another noteBob->Bob : I am thinkingnote lefta notecan also be definedon several linesend note@enduml
0eda7a02e90be5678af3cdeead6d8c50.png

更多的语法请参考官方……

通过代码来实现流程图,有没有觉得很爽呢?

更重要的,支持的平台非常多

http://plantuml.com/zh/running

d47202ca8e64ca1b9ba1d917a3984d22.png

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/409591.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

有限状态自动机java实现_用java开发编译器之:Thompson构造,将正则表达式转换为有限状态自动机...

阅读博客的朋友可以到我的网易云课堂中,通过视频的方式查看代码的调试和执行过程:上一节,我们通过代码,实现了一个有限状态自动机,并将其应用于对整形和浮点数的识别。构造有限状态自动机,并驱动它&#xf…

java圆形进度条_可拖拽圆形进度条组件(支持移动端)

好久之前写过一个可拖拽圆形进度条的dome,中间有网友反馈过一些问题,最近比较闲有时间修改了一些问题也做了一些优化,并封装成组件,基于canvas实现,只需传入放置组件dom容器,任何框架均可直接使用&#xff…

u盘无法复制文件进去_只需一招,禁止Windows复制文件到U盘,再也不用担心你的资料被拷走!...

现在,我们日常的生活和工作都是电脑全程陪伴,可以说是离不开电脑了。也正是因为电脑的功能那么多,而且在保存资料方面,相比纸质资料来讲,确实有十分大的优势!因此,有许多人都会将一些重要的个人…

java word 饼图_[Java教程]echarts标准饼图解读(一)——基本配置demo

[Java教程]echarts标准饼图解读(一)——基本配置demo0 2016-11-21 17:00:18echarts标准饼图解读共分为四部分,一、基本配置demo二、标题(title)配置三、提示框(tooltip)配置四、图例(legend)配置五、系列列表(series )配置下面是一个基本配置demo,复制下…

postgres 禁止远程登录_Windows 7禁止可移动存储设备写入数据,只有想不到,没有做不到...

哈喽,今日头条的小伙伴们大家好,我是你们的好朋友IT咨询顾问。组策略是微软Windows NT家族操作系统的一个特性,它可以控制用户帐户和计算机帐户的工作环境。组策略提供了操作系统、应用程序和活动目录中用户设置的集中化管理和配置&#xff0…

二维数组排序 行与列分别升序_6个经典排序技巧,尤其是最后一个,绝对的个性化...

点击上方"Excel函数公式"免费订阅排序,从字面意思理解就是将一组“无序”的记录调整为“有序”的记录。在Excel中,排序是一种常见的操作,那么,如何高效的完成排序操作呢?一、Excel排序:常规(命令…

Quantumas,作者太NB了,俺发现俺菜得跟猪一样!!!

前不久一个名为“Quantumas”的3D Demo引起了我们的关注,其作者称“这个引擎整合了各种最先进的渲染技术,在画质上超越了虚幻3,部分超越了CE2”,而我们在这个Demo中也的确看 到了高阶动态范围、多频软阴影、空间环境遮掩、HDR景深…

java薪资年龄交叉表_巧用参数实现交叉表行列互换

对于普通的没有olap分析功能的快逸报表而言,一旦发布到web页面后,其样式就被固定了,如果想把报表换种形式展现通常的做法是重新设计一张报表模板来实现,难道快逸报表就没有一种特殊的方法可以解决这样的需求吗?答案就在…

spring 环境

引用:http://www.189works.com/article-96241-1.html 准备阶段: 到Spring官网下载所需的API包,其中spring-framework-X.X.X.RELEASE-with-docs.zip压缩包需要下载,里面的dist目录下有所需的API,还有一个是com.springsource.org.apache.common…