使用PHP_UML生成代码的UML图
2020-02-15 00:00
3379 查看
在读别人代码的时候, 在没有详细文档的时候, 如何快速的看清整个代码的结构(类结构), 就成为了一个现实的问题.
今天我就介绍一种, 自动生成UML图的方法.
假设, 我有一个项目文件夹:laruence, 在这个文件夹上有一个文件Root.php(事实上, 无论多级目录, 多个文件, 都可以).
<?php abstract class Root { private $instance; abstract public function Hi(); } interface Intro { public function Say(); } class Sub extends Root implements Intro { private $instance; public function Say() { echo "I am Laruence"; } public function Hi() { echo "Hello!"; } } ?>
首先, 我们要使用PHP_UML(PHP_UML)根据代码生成XMI.
使用方法比较简单, 在安装PHP_UML以后, 运行:
phpuml laruence/ -o laruence.xmi -n laruence -f xmi --pure-object --no-deployment-view --no-component-view --no-docblocks
会得到一个laruence.xmi文件, phpuml的具体参数可以通过phpuml –help了解.
有了xmi以后, 如何转成UML图呢?
Visio2007不支持导入XMI, 我找到了另外的一个工具:Altova Umodel, 这个工具可以支持XMI到UML图的转换, 需要注册, 不过提供了30天的使用许可(大家要是有更好的替换方案, 欢迎补充).
在Umodel导入laruence.xmi以后 ,生成UML图, 就得到了如下的PNG:
UML图
是不是很方便呢?
另外PHP_UML还可以生成html格式, 做为一种doc gen工具也不错. 更可以通过xmi生成PHP文件.
相关文章推荐
- 一个关于if else容易迷惑的问题
- 5分钟学会PHP扩展开发与断点调试
- PHP教程系列3-写PHP程序前必须知道的5点信息
- PHP教程系列2-搭建PHP环境
- 我是如何拿到巨额漏洞奖金的
- Go 语言基础入门教程 —— 数据类型篇:数组切片的创建和遍历
- Go 语言基础入门教程 —— 数据类型篇:数组及其使用
- Go 语言基础入门教程 —— 数据类型篇:基本数据类型之间的转化
- Go 语言基础入门教程 —— 数据类型篇:字符串和字符类型
- Go 语言基础入门教程 —— 数据类型篇:浮点型与复数类型
- Go 语言基础入门教程 —— 数据类型篇:整型和运算符
- Go 语言基础入门教程 —— 数据类型篇:概述和布尔类型
- Go 语言基础入门教程 —— 常量和枚举
- Go 语言基础入门教程 —— 变量声明、初始化、赋值和作用域
- Go 语言基础入门教程 —— Go 项目基本工程管理示例
- Go 语言基础入门教程 —— 第一个 Go 程序