IDE支持

  • Phpstorm

    • 在Plugins中 安装PlantUML integration插件

    • http://www.graphviz.org/网站下载graphviz.exe并安装(这个软件可以支持更多的UML语法)

    • 将graphviz安装目录下的dot.exe路径添加到PlantUML的设置中

文档

  • 文档地址:http://plantuml.com/

  • 建议使用活动图-Activity-bate语法:活动图Activity-Beta

  • 活动图(新语法)

当前活动图(activity diagram)的语法有诸多限制和缺点,比如代码难以维护。所以从V7947开始提出一种全新的、更好的语法格式和软件实现供用户使用(beta版)。就像序列图一样,新的软件实现的另一个优点是它不再依赖与Graphviz。
新的语法将会替换旧的语法。然而考虑到兼容性,旧的语法仍被能够使用以确保向前兼容。
但是我们鼓励用户使用新的语法格式。

语法

基础

  • @startuml@enduml
    开始、结束标记,表示UML解析的部分

  • startend
    表示图示的开始和结束。图示的开始和结束。

  • :Hello world;
    活动标签(activity label)以冒号开始,以分号结束。活动默认安装它们定义的顺序就行连接。

  • ifthenelseelseif
    设置分支测试。标注文字则放在括号中。

  • repeatrepeatwhile 重复循环。

  • whileendwhile进行while循环。还可以在关键字endwhile后添加标注,还有一种方式是使用关键字is

  • forkfork againend fork表示并行处理。

  • noteend notefloating note left 等等表示注释,例如:

floating note left: This is a note
:foo2;
note rightThis note is on several//lines// and cancontain <b>HTML</b>====* Calling the method ""foo()"" is prohibited
end note
  • #HotPin:activity;#AAAAAA:ending of the process; 表示颜色

  • 使用->标记,你可以给箭头添加文字或者修改箭头颜色。dotted, dashed, bold or hidden arrows 和颜色标记,例如-[#blue]->

  • 通过定义分区(partition),你可以把多个活动组合(group)在一起。通过定义分区(partition),你可以把多个活动组合(group)在一起。例如:

partition Initialization {:read config file;:init internal variable;
}
  • 使用管道符|来定义泳道。还可以改变泳道的颜色。

|Swimlane1|
start
:foo1;
|#AntiqueWhite|Swimlane2|
:foo2;
:foo3;
|Swimlane1|
:foo4;
|Swimlane2|
:foo5;
stop
  • 关键字detach移除箭头。

  • 通过修改活动标签最后的分号分隔符(;),可以为活动设置不同的形状。|、<、>、/、]、}

:next(o)|
:Receiving;
split:nak(i)<:ack(o)>
split again:ack(i)<:next(o)on several line|:i := i + 1]:ack(o)>
split again:err(i)<:nak(o)>
split again:foo/
split again:i > 5}
stop
end split
:finish;

一个例子

@startuml
start
if (is login?) then (Y)if (gived box?) then (Y):illegal request;detachelse (N):release box;:get boxOid;endif
else (N)if (has boxOid?) then (N):illegal request;detachendif
endif:check wechat broswer;
if (wechat broswer?) then (Y)if (get openid from cookie?) then (Y)if (get userInfo from DB by openid?) then (N):clear openid in cookie;:re-request Url;detachendifelse (N):location wechat auth;detachendif
endif:receive chocolate;end
@enduml

PhpStorm中绘画UML相关推荐

  1. php中绘画控制包括什么,PhpStorm中绘画UML

    IDE支持 Phpstorm 在Plugins中 安装PlantUML integration插件 到http://www.graphviz.org/网站下载graphviz.exe并安装(这个软件可 ...

  2. 在PHPStorm中支持ThinkPHP代码提示

    在phpstorm中开发ThinkPHP应用程序时,没有代码提示,困扰了很长时间,后来参考网上一些关于在phpstorm中支持YII框架代码提示的相关帖子,尝试在ThinkPHP中进行测试,目前测试成 ...

  3. 通过sftp打开php.ini,PhpStorm中如何使用SFTP功能 详细操作方法

    1. 简介: PhpStorm是一个轻量级且便捷的PHP IDE,其提供的智能代码补全,快速导航以及即时错误检查等功能大大提高了编码效率.它是一款商业的 PHP 集成开发工具,以其独特的开发便利性,短 ...

  4. 在统一软件开发过程中使用UML

    如何在统一软件开发过程中使用UML? 起始阶段常用UML图 在起始阶段,通常有用例图.类图.活动图.顺序图等UML图的参与. 获取用户需求之后首先要将这些需求转化为系统的顶层用例图. 在确定了用例之后 ...

  5. 浅析软件工程中的UML建模技术

    一.基本信息 标题:浅析软件工程中的UML建模技术 时间:2018 出版源:电子世界 领域分类:软件工程:UML建模技术:需求分析 二.研究背景 问题定义:软件工程中UML建模技术的研究 难点:明确软 ...

  6. Visual Studio 2010中的UML

    Visual Studio越来越丰满了,Visual Studio 2010没有MSDN,没有汉化包就2.18G了,可能有很多.net的程序员或初学人员在抱怨,这么大,都有什么用呀?我在刚学习.net ...

  7. php 开启命令模式,如何启用PhpStorm中的命令行工具

    本篇文章主要给大家介绍如何使用phpstorm中的命令行工具. PhpStorm下载地址: PhpStorm使用命令行工具,我们可以直接从IDE调用命令!在我们使用任何命令行工具之前,我们必须在设置中 ...

  8. 如何在Webstorm/Phpstorm中设置连接FTP,并快速进行文件比较,上传下载,同步等操作...

    Phpstorm除了能直接打开localhost文件之外,还可以连接FTP,除了完成正常的数据传递任务之外,还可以进行本地文件与服务端文件 的异同比较,同一文件自动匹配目录上传,下载,这些功能是平常I ...

  9. 图解Visual Studio 2010中的UML建模功能

    Visual Studio 2010在架构和项目管理方面的功能增加让人眼前一亮,之前曾详细介绍过Visual Studio 2010新增的架构工具,包括通过可视化技术DGML提供直观的图表,依赖图,继 ...

最新文章

  1. [deviceone开发]-do_Http组件示例
  2. 韩军星:汇报工作的四个层级
  3. php拖拽原理,JS拖拽效果及原理解析
  4. Java 9:流API的增强
  5. css sprite原理优缺点及使用
  6. VS2010开发应用程序读写注册表
  7. 利用rsync+inotify搭建实时同步系统
  8. py2exe使用方法
  9. POST数据加密问题
  10. 姓名评分程序PHP,姓名测试打分,免费姓名评分测试,免费姓名测试评分 - 姓名算命最准的网站...
  11. win7局域网共享教程
  12. 【PCIe总线】-- PCI、PCIE基础知识
  13. 我为什么要转到软件工程专业
  14. 设计模式:设计模式经典总结
  15. Gartner发布《2021年RPA魔力象限》,两家中国企业首次入选,开创历史!
  16. Python 使用Gmail发送邮件
  17. ico的尺寸_Favicon.ico浏览器图标文件制作和正确使用
  18. 你离大厂前端工作,升职加薪有时就差一点算法,今天全部教给你!
  19. “一键”控制 STM32 的 NRST 和 BOOT0
  20. 车牌识别关键技术-车牌定位

热门文章

  1. matplotlib如何绘制两点间连线_如何用 Python 快速揭示数据之间的各种关系
  2. c# 访问hbase_C#教程之通过Thrift实现C#与Hbase交流
  3. 计算机习题2,计算机应用习题2
  4. linux python自动补全_Linux下在python命令行中自动补全代码(py2、3,centos、ubuntu)...
  5. 【视频课】图像分割最新内容来了(言有三新录制4部分实例分割算法详解)
  6. 【调参实战】如何开始你的第一个深度学习调参任务?不妨从图像分类中的学习率入手。...
  7. 全球及中国工业水性涂料行业销售前景与竞争态势研究报告2022年
  8. 风寒感冒与风热感冒的区分与治疗
  9. vs2019中如何创建qt项目_VS2019创建新项目居然没有.NET Core3.0的模板?
  10. Nuget打包类库及引用