【问题标题】:Generate UML from Python source [duplicate]从 Python 源代码生成 UML [重复]
【发布时间】:2011-09-20 06:20:56
【问题描述】:

我有一个 Python 程序,我想从中生成一个 UML 图。 哪些程序可以做到这一点?

编辑:我想要编辑生成的图表的选项

【问题讨论】:

  • 看看这里的讨论:link
  • 这些“标记为重复”主题的问题在于引用了 7 年前已回答且非常陈旧的问题

标签: python uml


【解决方案1】:

我不确定您希望您的图表具有什么样的质量,但是有一个名为 PyNSource 的工具仍在维护中(最后一次更新是 8 月),可以满足您的需求。你可以找到它here。我应该澄清一下,这个程序适用于 Windows。

【讨论】:

  • 以上链接已旧,Pynsource 现在位于pynsource.com。不再仅限于 Windows - 它现在是完全跨平台的。准备运行的二进制文件可用于 Mac、Windows、Ubuntu 18 和 Ubuntu 16。
【解决方案2】:

Here 你可以找到 UML-Python 工具列表。如果您需要编辑图表,那么您可能应该先查看PyUML

【讨论】:

  • 你能给我一些关于如何使用 PyUML 从源代码生成 UML 的提示吗?我有一个包含 main.py 文件和 lib 文件夹的文件夹,其中包含几个文件,每个文件都有一个类和 init.py 文件。
  • 对不起,我自己没用过这个工具
  • 你终于设法使用了 PYUML。如果是的话,请你在这里发帖。
【解决方案3】:

还有 Stani's Python Editor (SPE) 可以即时绘制简单的 UML 图。

【讨论】:

  • 我也不明白。当我写这篇文章时,我没有评论这篇文章。它是怎么落到这里的?有趣...
【解决方案4】:

我的工具Pynsource 会将 Python 3 / Python 2 源代码逆向工程为 UML 类图。您可以拖动以重新排列屏幕上的类或让自动布局来完成。

您可以编辑/添加/删除类和关联 - 支持黄色注释。它甚至可以生成 ASCII UML 以粘贴到您的代码中。

有一个开源社区版,如果你想要缩放功能,还有一个专业版。

【讨论】:

  • 这个程序能很好地处理大型项目(比如 matplotlib)吗?
  • 嗯,大型项目最好分解成子图,否则类的数量会变得不堪重负,就像意大利面条一样。每个图表都应该讲述一个传达某些东西的故事。我上面提到的我的开源UML工具Pynsourcepynsource.com自从被提及以来已经经历了很多版本的变化。它现在解析 Python 3,具有缩放、布局、ASCII UML 和 PlantUML 渲染支持。据我所知,它是唯一识别 Python 实例属性而不仅仅是类属性的 UML 工具。准备运行的二进制文件可用于 Mac、Windows、Ubuntu 18 和 16。
猜你喜欢
  • 2011-02-25
  • 2011-12-12
  • 2011-11-05
  • 1970-01-01
  • 2011-07-27
  • 1970-01-01
  • 2017-07-08
  • 1970-01-01
  • 2021-07-03
相关资源
最近更新 更多