【发布时间】:2012-09-25 19:46:41
【问题描述】:
情况
我有一个 PHP 项目,其中有很多类,在 Zend Naming Convention 之后的很多文件夹中有很多关系。
我使用 NetBeans IDE 7.1。 我在 Windows 7 下工作。
目标
我需要查看类关系的图形表示,可能具有不同的深度和不同程度的复杂性。此外,如果图表中的类是可点击的,那就太好了。我不一定需要生成文档。
尝试
1。在 NetBeans 中
NetBeans 是一个很棒的 IDE,有很多特性。事实上,它可以识别类依赖关系,明智的做法是假设它有某种方式以图形方式查看这种关系,本机或通过插件。这样的plugin 存在,但适用于版本 5.5。我有7.1,它不兼容。失败。
2。企业架构师
一个简单的谷歌搜索带来Enterprise Architect 作为解决此类问题的全能、完全全面的工具。所以,我下载并安装。我不打算详细说明我无法理解如何做任何事情,以及教程如何吹嘘软件可以做什么,但很少说如何。
所以,我导入了源代码。它生成了许多不同的类并解析了所有成员。此外,它还生成了类图。 “完美!”,我虽然,但唉。类图仅显示类之间的关系,其文件位于同一源文件夹中,尽管关系已在类的属性中明显注册。搜索有关如何将所有这些图表合并为一个的文档是不成功的。失败。
注意:我在 here 之前创建了一个并行线程。
3。 PHP_UML
找到this PEAR tool。看起来不错。因此,我阅读了有关如何从各种来源为我的设置安装它的文档,然后运行它。首先,我使用了 html 输出格式。伟大的!大量带有索引的文档,bla bla bla。但是,它可以朝着我想要的方向做的最好的事情是: 不用说,我猜这是我真正需要的一个非常糟糕的超级简化版本。结论:失败。
4。企业架构师 + PHP_UML
不过,PHP_UML 也可以生成 XMI。哇。很不错。我可以存储我的关系并以不同的方式查看它们并与其他人交流。
所以,我将它导入 Enterprise Architect。结果:与之前单独使用 Enterprise Architect 相同,只是没有类图。只是上课。据我了解,我现在可以手动创建关系。史诗般的失败。
5。 ArgoUML + PHP_UML
在寻找解决方案的某个地方,我偶然发现有人评论说他们使用ArgoUML。已下载并安装。 XMI 导入有些麻烦(必须明确将版本更改为 1)。失败(参见尝试 3)。
结论
这样一个看似微不足道的任务,却又如此艰巨。我必须通过this whole list,尝试每个应用程序吗?
【问题讨论】:
-
这是四个不同的问题,其中只有两个与 XMI 有关。 StackOverflow 问题和答案旨在形成一个存储库,其他人可以在其中找到相同问题的解决方案。请针对每个工具将此问题拆分为一个,我将回答有关 EA 的问题。
-
我已经在你的 (rather duplicate) 问题中告诉过你,你也可以使用 Phpstorm 来生成它。此外,这个问题听起来更像是无用的咆哮。如果您需要使用 Netbeans,您应该提交功能请求(我认为相关的请求已关闭,因为没有兴趣这样做,所以如果您选择了错误的产品)不够灵活或不够胜任使用其他现有工具)。
-
Hakra,没有“四个不同的问题”。我已经在“目标”部分说明了我需要什么。 “尝试”部分列出了我所做的,因此没有相同的建议。
-
我是那个说这是四个不同问题的人,我坚持这一点。正如标题所示,前两个与 XMI 无关。您无法将所有相关标签添加到问题中这一事实也非常清楚地表明它涉及太多不同的主题。我理解你的沮丧,但请接受这不是一个带有对话线程的讨论论坛,它是一个问答网站,问题和答案都应该与其他人相关 (stackoverflow.com/questions/how-to-ask),实现这一点的最佳方法是保持他们具体。
-
Uffe,我不明白你在哪里看到 4 个不同的问题。尝试说明了我是如何到达现在的位置的。问题是:我想从源代码生成一个类图。现在,我有一个 XMI 文件,我想从中生成图表,正如问题的标题所示。
标签: php uml class-diagram enterprise-architect argouml