情况
我有一个使用 Zend 命名规范 的 PHP 项目,其中有许多类与许多文件夹中的关系。
我使用 NetBeans IDE 7.1。 我在 Windows 7 上工作。
目标
我需要查看类之间的关系图形表示,可能具有不同深度和不同复杂度。此外,如果图表中的类是可点击的,则会很好。我不一定需要生成文档。
尝试
1. 在NetBeans中
NetBeans 是一个功能齐全的 IDE。实际上,它识别类依赖性,并且可以假设它具有某种方式本地或通过插件以图形方式查看此关系。这样的插件存在,但适用于版本5.5。我有7.1,不兼容。失败。
2. Enterprise Architect
简单的谷歌搜索将Enterprise Architect列为解决此类问题的万能、全面的工具。于是,我下载并安装了它。我不会详细说明我无法理解如何做任何事情以及教程如何吹嘘软件可以做什么,但很少说如何。
所以,我导入了源代码。它生成了许多不同的类并解析了所有成员。此外,它还生成了类图。我想:“完美!”但不幸的是。类图仅显示位于同一源文件夹中的文件之间的关系,尽管这些关系在类的属性中可见注册。搜索有关如何将所有这些图表合并为一个的文档无果。失败。
注意: 我之前创建了一个并行线程,链接在这里.
3. PHP_UML
发现了这个PEAR工具。看起来不错。于是,我阅读了各种来源的有关如何为我的设置安装它的文档,并运行了它。首先,我使用html输出格式。太好了!有许多带有索引的文档,等等。然而,它在我想要的方向上能做到的最好的一点是这样的: 不用说,我猜,这是一个非常简单、超级简化的版本,与我实际需要的相比。结论:失败。
4. Enterprise Architect + PHP_UML
然而,PHP_UML也可以生成XMI。哇。非常好。我可以存储我的关系并以不同的方式查看它们并与其他人交流。
所以,我将其导入Enterprise Architect。结果:与仅使用Enterprise Architect时相同,只有没有类图。只有类。根据我所读到的,现在我可以手动创建关系。失败。
5. ArgoUML + PHP_UML
在寻找解决方案的过程中,我偶然发现了某个人的评论,他说他使用ArgoUML。下载并安装。XMI导入时遇到了一些麻烦(必须显式更改版本为1)。失败(见尝试3)。
结论
看起来是一个貌似微不足道的任务,但却如此困难。我必须浏览这个完整的列表,尝试每个应用程序吗?