所谓学而不思则罔,思而不学则殆。

对一个整日都和键盘打交道程序猿来说,人生最痛苦的两件事,莫过于写字和画图了。

而相对于市面上大多的作图工具,又往往设计得不那么贴合程序人员的使用习惯,每每叫我画个流程图、时序图、思维导图时,那比我敲一晚上代码还难受,相信这样的经历非我一人所有,不是不会画,实在是没有那个美感设计的天赋。

而这时,也是一个偶尔的机会,让我发现了这样一款产品,PlantUML。

可以这样说,这是一款专为程序猿设计的作图工具,通过编码的逻辑来作图,剩下的就是交给这人性化的工具去自动生成,如此美妙的开局,让我忍不住欢呼,喝彩!!!

也是不再赘述PlantUML的好话了,让我们直接看干货。

PlantUML的作画分类,大体可分为:

  1. 时序图:顺序图的语法和功能;
  2. 流程图:活动图的语法和功能;
  3. 思维导图:这一个官网没有看到具体分类,我整理了一个案例,可copy着使用;
  4. 用例图:用例图语法和功能;
  5. 类图:类图的语法和功能;
  6. 组件图:组件图的语法和功能;

时序图实例:

@startuml
participant DefaultBeanDefinitionDocumentReader as p1
participant BeanDefinitionParserDelegate as p2
participant BeanDefinitionReaderUtils as p3
participant XmlReaderContext as p4p1 -> p1 : 1 processBeanDefinition(ele, delegate)
p1 -> p2 : 1.1 parseBeanDefinitionElement(ele)
p2 --> p1 : 1.2 bdHolder:BeanDefinitionHolder
opt [bdHolder!=null]p1 -> p2 : 1 decorateBeanDefinitionInRequired(ele, bdHolder)p2 --> p1 : 2 bdHolder:BeanDefinitionHolderp1 -> p3 : 3 registerBeanDefinition(bdHolder, getReaderContext().getRegistry())p1 -> p4 : 4 fireComponentRegistered(new BeanComponentDefinition(bdHolder))
end@enduml

流程图实例: 

start
:"盲僧刷完先锋去上路Gank";
:"打好标记,叫己方上路石头人去勾引对面诺手";
if ("判定 瞎子+石头人 是否打赢了 敌方诺手") then (true):"乘势放先锋吃一血塔";
else:"上野联动,一死一送。";if ("判定盲僧是否有大赏金(1000块)") then (true):"对面人头狗直接起飞";endif
endif
stop

思维导图:

@startmindmap+[#17ADF1] 英雄联盟++[#lightgreen] 上单
+++_ 刀妹
+++_ 剑魔
+++_ 青钢影
+++_ 人头狗++[#lightgreen] 打野
+++_ 瞎子
+++_ 挖掘机
+++_ 皇子++[#lightgreen] 中单
+++_ 阿狸
+++_ 发条
+++_ 冰女--[#lightgreen] adc
---_ 厄斐琉斯
---_ 烬
---_ 寒冰
---_ 薇恩
---_ 卢仙--[#lightgreen] 辅助
---_ 日女
---_ 牛头
---_ 锤石@endmindmap

这里整理了三个最为常用类型的案例,其余逐个可去往PlantUML官网查看。

PlantUML编译生成工具:

https://www.plantuml.com/plantuml/duml/PO-n2i9044Jx_Oh1tdo0XUGmYALWm48iDd6Z1vSxkTq4_7kJe5MwOUODmvHgd6te0v6F9hdZLh2fs1YkRKLr0rPKZgXosE9sz5aDXzI_KvHeTrevA8ezJdLznWw32b5C9WZI6LBt3wxIu29vzDDQYk7pex9_lXPilGCuB4pB4HmqJKupbw4oIkQ0uACeINmi754voVdO5m00

PlantUML使用,案例辅助相关推荐

  1. OAuth 2.0攻击面与案例总结

    本文整理了OAuth 2.0的攻击面+实际案例+辅助测试代码. OAuth流程 本文以两种广泛使用的方案为标准展开..如对流程不了解,请先移步学习: 理解OAuth 2.0 Authorization ...

  2. 疯抢当当图书 618 优惠码,花 120 买 300

    囤书囤书 我们一起阅读经典,紧跟前沿技术不掉队 这次继续给爱读书的你们最大的优惠力度   当当网自营图书大促 >> 每满100减50  << 满200减100 满300减150 ...

  3. 1024 大促书单丨神券在手,快乐我有

    //    把闸拉了,今天谁也别想加班!  // 又是一年1024,又是一年程序员节 这嘴上说着"今天不加班" 肉体却被牢牢封印在电脑前的日子何时是个头 擦掉泪水,生活还要继续 博 ...

  4. 27道高频Spring面试题,你能答对几个?

    点击蓝色"程序猿DD"关注我 回复"资源"获取独家整理的学习资料! 坚持看完,文末福利等你 本文节选自 <Spring 5核心原理与30个类手写实战> ...

  5. Spring的数据库编程浅入浅出——不吹牛逼不装逼

    Spring的数据库编程浅入浅出--不吹牛逼不装逼 前言 上文书我写了Spring的核心部分控制反转和依赖注入,后来又衔接了注解,在这后面本来是应该写Spring AOP的,但我觉得对于初学者来说,这 ...

  6. 【编程规范】 后端API接口设计编写与文档编写参考

    文章目录 0 统一规范 0.1 理清业务流程 0.2 定义前后端开发的接口规范 0.3 定义接口文档 1 后端接口编写 1.0 后端接口介绍 1.0.1 接口交互 1.0.2 返回格式 1.0.3 C ...

  7. 100本最棒的web前端图书推荐

    100本最棒的web前端图书推荐 01.<JavaScript DOM编程艺术第二版(中文)> 语言:中文 类型:pdf 简介:这本书作为被大家推荐的最多的前端入门书籍是有道理的. 他能真 ...

  8. 第四期单独赠书,书籍翻倍,给你留了一本。

    点击上方"程序IT圈",选择"置顶公众号" 每天早晨8点50分,准点开车打卡 公众号第三期打卡采用订阅号助手排行榜功能,参照下图所示的三个指标:精选留言最多.分 ...

  9. 门店私域运营,突围线上冲击

    线下的实体零售门店想要打破线上冲击,那就要改变现状,先突破固有的思维模式,我们知道线上的效率要远高于大部分的线下零售行业的,尤其是近年来,线上电商行业的迅速崛起,逐渐霸占了人们的消费方式,也因此一些线 ...

最新文章

  1. 在Pycharm工具中配置集成Git和GitHub
  2. 使用Composer安装Laravel步骤
  3. 【转载】SQL执行计划
  4. Golang Context包的使用
  5. 机器学习的数学基础(1)--Dirichlet分布
  6. java安全沙箱(一)之ClassLoader双亲委派机制
  7. 0603贴片电阻阻值对照表_怎样读贴片电阻阻值
  8. 使用Xmanager远程连接Linux RedHat 6.4图形桌面
  9. Spark整合ElasticSearch
  10. bootstrap实现表格
  11. 181013词霸扇贝有道每日一句
  12. Maya: Render Setup System Maya教程:渲染设置系统 Lynda课程中文字幕
  13. 基于Ntrip的实时多线程RTCM数据流接收及解码
  14. SpringBoot项目添加mybatis插件
  15. 实战:解密拼多多玩法—砍价
  16. 2017 沪牌中标后流程
  17. python怎么算一元二次方程_python如何解一元二次方程
  18. Rabbitmq消息中心_消息中心总体方案
  19. 企业内部搭建OpenVirtualPrivateNetwork快速入门
  20. sublime 的一个神秘快捷键

热门文章

  1. 使用Ps制作ICON
  2. 隐身模式启动谷歌浏览器chrome
  3. 怪物猎人世界哪把武器最热门?数据挖掘练习-其二 python爬取MHW贴吧主题并统计
  4. Geronimo CORBA
  5. 阿尔法大蛋智能机器人功能_科大讯飞阿尔法大蛋人工智能机器 真的很智能吗...
  6. xps15java_2018戴尔XPS 15值得买吗?2018全新戴尔XPS 15磁悬浮键盘笔记本上手评测
  7. win10 + NVIDIA GeForce RTX 2080 Ti + CUDA10.0 + cuDNN v7.6.5
  8. 计算机科学班会,改变了——我系12级计算机科学与技术1班主题班会
  9. 王者荣耀是怎样炼成的(二) 王者荣耀 unity安装及使用的小白零基础入门
  10. BOW航世HB098S蓝牙键盘使用说明书