一位同事希望从大量的Python源代码中生成UML类图。 他主要对继承关系感兴趣,对组合关系稍有兴趣,不太关心仅仅是Python原语的类属性。
源代码非常简单,也不是特别邪恶——例如,它没有使用任何花哨的元类魔法。(它主要来自Python 1.5.2时代,有一些“现代”2.3之类的东西。)
现有的最好的解决方案是什么?
一位同事希望从大量的Python源代码中生成UML类图。 他主要对继承关系感兴趣,对组合关系稍有兴趣,不太关心仅仅是Python原语的类属性。
源代码非常简单,也不是特别邪恶——例如,它没有使用任何花哨的元类魔法。(它主要来自Python 1.5.2时代,有一些“现代”2.3之类的东西。)
现有的最好的解决方案是什么?
当前回答
值得一提的是加弗尔。一个Python建模/UML工具。
其他回答
Epydoc是一个从Python源代码生成API文档的工具。它还使用Graphviz生成UML类图。下面是一个从Epydoc本身的源代码生成的图表示例。
由于Epydoc同时执行对象内省和源解析,它可以收集与静态代码分析器(如Doxygen)有关的更多信息:它可以检查相当数量的动态生成的类和函数,但也可以使用注释或未赋值的字符串作为文档源,例如变量和类公共属性。
如果您使用Eclipse,则可能使用PyUML。不过还没用过。
Sparx的企业架构师执行Python源代码的往返。他们有免费的限时试用版。
伞盖也能做到。在菜单中转到Code -> import project,然后指向项目的根目录。然后它为你颠倒了代码…
值得一提的是加弗尔。一个Python建模/UML工具。