ProcessOn - 在线绘图工具

ProcessOn

  • 支持流程图、思维导图、原型图、UML、网络拓扑图等;
  • 主流的UML图列都支持,可以作为方便快捷的UML工具;

PlantUML - 多系统多编辑器的UML绘图工具

PlantUML

  • 以文字方式表达图的内容并直接生成图,支持时序图、流程图、用例图、状态图、组件图等;
  • 以插件形式被Eclipse、PyCharm、Idea、Emacs、Word等所集成;
  • 需要花费一些时间熟悉绘图语法;

在Windows系统安装PyCharm的PlantUML插件:

  1. 安装PlantUML插件
  2. 安装开源图片渲染库Graphviz,否则无法正常显示
  3. 设置:File---》Settings---》Other Settings--》PlantUML---》Graphviz dot executable:填写Graphviz下bin目录dot.exe的完整路径
  4. 使用PlantUML:File---》New---》选择创建UML图

UMLet - 多系统针对Java语言的UML绘图工具

UMLet

  • 免费开源,能够快速构建UML图并导出为eps、pdf、jpg、svg等格式;
  • 单独运行或者作为Eclipse插件在Windows、OS X以及Linux上运行;
  • 可以创建自定义的UML元素;

单独运行:从UMLet官网下载独立版本,解压后点击UMLet.exe开始绘制UML图;
作为Eclipse插件:

  1. UMLet官网下载Eclipse plugin版本的压缩包;
  2. 将解压出来的jar文件复制到Eclipse的plugins目录下,然后重启Eclipse;
  3. 选择File--》New--》Other--》Umlet Diagram,选择位置和指定名称--》开始绘制UML图;

使用简介:

  1. 打开UMLet后,在右上侧区域内双击想要添加的对象,对象被自动添加到面板中;
  2. 选中添加进来的对象,在右下角的属性面板中,修改对象的属性;
  3. 保存创建完成的UML图,可以导出来为其它格式;

ObjectAid UML Explorer - 针对Java语言用来创建UML图的Eclipse插件

ObjectAid UML Explorer可将Java源代码生成类图等,便于快速阅读和分析代码。
自动生成类图示例:

  1. File--》New--》Other--》ObjectAid UML Diagram--》ClassDiagram--》输入路径和文件名,点击Finish。
  2. 可以直接拖动类文件到文件工作区域,自动生成类图。
  3. 在文件工作区域点击右键,显示相关功能,例如“Add--》Java Classfier”添加相关的类。

Umbrello - 多系统多语言的UML绘图工具

Umbrello

  • 支持Linux、Windows、OS X系统;
  • 可以对C++、IDL、Pascal、Ada、Python和Java编写的代码进行反向工程;
  • 允许模型内容由输出成docbook和XHTML格式发布

其他Eclipse插件

Acceleo:代码自动生成器,可将模型转换为Java、Python、C等代码。
Papyrus: UML绘图工具,可将Java文件或包逆向生成Papyrus类图。

支持Python的UML工具

  • Umbrello
  • Acceleo
  • PlantUML
  • 专业版PyCharm的Diagrams功能显示UML图:当前文件右键--》Diagrams--》Show Diagrams
  • 使用Graphviz和Pyreverse生成Python代码的UML类图

示例:使用Pyreverse生成Python代码的UML类图

  1. 安装Graphviz,并添加PATH系统变量
  2. 因为Pyreverse工具集成在Pylint里,可通过“pip install pylint”命令安装pyreverse
  3. “pyreverse -h”获取命令帮助
  4. 参考命令:“pyreverse -ASmy -o png test/”,test为存放代码的目录

Tools - UML的更多相关文章

  1. UML online tools

    UML online tools UML https://www.diagrams.net/assets/svg/home-dia1.svg refs https://www.diagrams.net ...

  2. UML drawing tools

    1. tools based on the script http://www.websequencediagrams.com/ UMLet 12.1 My best two recommendati ...

  3. QM UML状态机建模实例之Blinky for cortex-m0

    简介:QP由Quantum Leaps公司开发异于传统顺序式系统(前后台架构即main+ISR)和传统多任务系统(操作系统)的事件驱动型状态机框架,实现了在C语言下的面向对象编程,该框架支持有限状态机 ...

  4. UML基础与Rose建模实训教程

    目  录 第1章  初识UML. 1 1.1 初识UML用例图... 1 1.2 初识UML类图... 3 第2章  Rational Rose工具... 6 2.1 安装与配置Rational Ro ...

  5. 【转】Java 项目UML反向工程转化工具

    原文链接:http://www.cnblogs.com/bakari/p/3561207.html 今天在看一个模拟器的源码,一个包里有多个类,一个类里又有多个属性和方法,如果按顺序看下来,不仅不能对 ...

  6. [转]UML八大误解

    潘加宇 本文删节版发表于<程序员>2013年11期 UML(统一建模语言)是软件建模的表示法标准.我从2002年开始专门从事研究和推广UML的工作,在为软件组织提供UML相关需求和设计技能 ...

  7. 13个优秀的开源UML工具介绍

    本文将为您介绍12个优秀的UML工具: 1. StarUML StarUML(简称SU),是一种创建UML类图,是一种生成类图和其他类型的统一建模语言(UML)图表的工具.StarUML是一个开源项目 ...

  8. Eclipse UML插件Green UML、AmaterasUML

    一.Green UML插件 1.查看Eclipse版本 查看当前电脑上安装的Eclipse版本(Help-About Eclipse Platform),是3.3.2版本的. 2.查看相应插件版本 然 ...

  9. 10 Code Coverage Tools for C & C++

    Code coverage is a measure used in software testing that describes the degree to which the source co ...

随机推荐

  1. R语言-散点图进阶

    1.分组散点图 ①xyplot()函数 > library(lattice) > xyplot(mpg~disp, #定义Y~X轴 + data=mtcars, + groups=cyl, ...

  2. Object.assign()怎么用?

    用于对象的合并,将源对象(source)的所有可枚举属性,复制到目标对象(target). 1.以对象为参数的合并1)Object.assign方法的第一个参数是目标对象,后面的参数都是源对象 con ...

  3. Codeforces Round #439 C. The Intriguing Obsession

    题意:给你三种不同颜色的点,每种若干(小于5000),在这些点中连线,要求同色的点的最短路大于等于3或者不连通,求有多少种连法. Examples Input 1 1 1 Output 8 Input ...

  4. 【Django】关于上传图片遇到的问题

    今天测试上传图片的时候,发现一只报错说找不到文件:FileNotFoundError 通过检查路径的输出,发现首先在settings配置路径的时候有问题 MEDIA_ROOT=os.path.join ...

  5. JavaScript实现观察者模式

    首先: 观察者模式是软件设计模式的一种,它

  6. 手游开发之lua的table 元表的运用

    元表在项目中的运用,其中就包括元方法这点.元方法是指__index和__newIndex,下面我总结下,更详细的例子讲解可以参考<lua程序设计 第2版>的第13章内容.长h短说,简言之有 ...

  7. Python: 下载底层由Python2转Python3环境更新手记

    谨记录运行环境改变过程中所碰到的坑. 下载底层运行环境由Python2移至Python3所遇到的问题及处理方法: 1.所引的第三方组件,基本都有替代支持:msvcr90.dll不再需要,有则报错2.引 ...

  8. [原]Docker部署SuperMap8.1.1

    摘要:本文主要实践在Docker上制作SuperMap(超图)V8.1.1镜像,文中将使用 docker commit 方式创新镜像(Dockerfile择机再做).本文中使用的宿主环境及镜像环境都是 ...

  9. Linux驱动之异常处理体系结构简析

    异常的概念在单片机中也接触过,它的意思是让CPU可以暂停当前的事情,跳到异常处理程序去执行.以前写单片机裸机程序属于前后台程序,前台指的就是mian函数里的while(1)大循环,后台指的就是产生异常 ...

  10. Python开发——基础

    注释 单行注释 # 被注释的内容 多行注释 """ 被注释的内容 """ 解释器路径 #!/usr/bin/env python # 用于L ...