我从事专有工业系统工作已经有一段时间了,就在最近,我被要求为我所做的事情制作一个 UML 图。但是,我已经研究了数百个类和函数,并且不希望手动创建此图。
该系统是用一种非常奇异语言(PLC/结构化文本)编写的,程序员不常用。据我所知,其语法有点类似于 Pascal,并且所有文件都保存在 XML 集合中。每个 XML 都代表某种对象,例如函数、“函数 block ”(本质上是类)、“程序”(有点像静态函数)、枚举或结构。
这些对象通常在 XML 中具有声明和实现标记。
使用某些标准 XML 解析器解析这种类型的代码结构并不是一项困难的任务。使用简单的字符串匹配器,我可以对每个对象及其与其他对象的关系进行分类。目前,我已经使用 Python 完成了此操作。
我的问题是,假设我知道代码的结构(对象关系等),是否有工具或编程库可以为我生成 UML 图?
我在想类似NetworkX的东西,但是这似乎无法生成 format I need以简单的方式。
干杯!
最佳答案
它可以使用这个网站制作,使用类似 dot
格式(这是他们的特定格式)。
作为示例,此代码:
<img src='http://g.gravizo.com/g?
/**
*Structural Things
*@opt commentname
*@note Notes can
*be extended to
*span multiple lines
*/
class Structural{}
/**
*@opt all
*@note Class
*/
class Counter extends Structural {
static public int counter;
public int getCounter%28%29;
}
/**
*@opt shape activeclass
*@opt all
*@note Active Class
*/
class RunningCounter extends Counter{}
'>
关于python - 自定义 UML 生成器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42481269/