类图从XMI的代(Generation of Class Diagram from XMI)

2019-07-31 22:35发布

情况

我有很多类,有很多在手后的文件夹的关系的PHP项目Zend的命名约定 。

我使用NetBeans IDE的7.1。 我的Windows 7系统下工作。

目标

我需要看到的阶级关系的图形表示,可能在不同深度和不同程度的复杂性。 此外,如果图中的类都可以点击它会很高兴。 我不一定需要生成文档。

尝试

1.在NetBeans中

NetBeans的是一个真棒IDE有很多的功能。 事实上,它识别类的依赖,这将是明智的,假设它有某种方式以图形方式查看这种关系,本身或通过插件。 这样的插件存在,但是对于5.5版本。 我有7.1,这是不兼容的。 失败。

2.企业架构师

一个简单的谷歌搜索带来了企业架构师作为解决这些问题的所有能力,完全综合性工具。 所以,我下载并安装。 我不打算去的我怎么会不知道如何做任何事情,以及如何教程是吹嘘什么软件可以做的细节,但很少说如何

所以,我进口来源。 它产生了许多不同的类和解析所有成员。 此外,它产生的类图。 “完美!”,我虽然,但很可惜。 类图只显示类之间的关系,文件,其中是在同一个源文件夹,尽管关系正在类的属性明显注册。 关于我如何能所有这些图合并成一个文件记录的搜索是不成功的。 失败。

:我这个人之前创建的并行线程在这里 。

3. PHP_UML

发现这个PEAR工具 。 看起来很不错。 所以,我通过关于如何安装它为我设置各种来源的文档阅读,并运行它。 首先,我使用的HTML输出格式。 大! 文档的大量与指数,唧唧歪歪。 然而,最好它可以做的我想是这样的方向: 不用说,我想,这是什么,我确实需要一个非常贫穷的,超级简化版本。 结论:失败。

4.企业架构师+ PHP_UML

然而,PHP_UML还可以生成XMI。 哇。 非常好。 我可以存储我的关系,并查看它们以不同的方式和与其他人交流。

所以,我导入到企业架构师。 结果:同单纯的企业架构师,只是不类图之前。 就在班级。 至于我读过它,我现在就可以手动创建关系。 史诗失败。

5. +的ArgoUML PHP_UML

通过某处我寻找解决方案,我偶然发现了别人的意见,即表示他们使用的ArgoUML 。 下载并安装。 XMI进口了一些麻烦(必须明确改变的版本为1)。 失败(请参阅尝试3)。

结论

这样一个看似简单的任务,然而,这么难。 我必须要经过这整个名单 ,尝试每一个应用程序?

Answer 1:

一要做到这一点的方法是采取在我尝试2或4所示的方法,然后按照作出批示, 这里的企业架构师。

要生成XMI使用PHP_UML文件:

  • 按照这些说明来安装PEAR,如果你已经单独安装PHP如果尚未安装。
  • 如果在Windows(我的情况)下,使用XAMPP,请按照下列指示以PEAR添加到PATH环境变量通过,从而使可用PEAR CMD ,并学习如何在两者的* nix和Windows系统的安装包。 提示:路径分隔是“;” (分号)用于Windows。
  • 在某些设置,比如如果使用XAMPP ,您可能需要激活XSL扩展 。 在这种情况下,打开你的php.ini文件(你可能需要管理员权限来保存它),并取消或以下行添加到“动态扩展”一节的底部: extension=php_xsl.dll
  • 安装PHP_UML包pear install PHP_UML
  • 执行phpuml -f xmi -o name_of_output_dir 。 如果你打算以后使用生成的XMI一些较旧的程序,你可能需要通过添加指定XMI版本1 -x 1
  • 对我来说,这并没有马上工作,他说,我很想念../../data/xmlschema.rng。 不知道为什么会这样,但如果你得到一个类似的错误,你可以下载它从这里并将其放置到data文件夹就在您的PEAR目录下。

这XMI以后可以与使用企业架构师 , 的ArgoUML和其他XMI工具 。



Answer 2:

编辑 :这个答案是希望产生从PHP项目的UML类图的人替代,它并不说明如何阅读XMI文件)

目标

我需要看到的阶级关系的图形表示,可能在不同深度和不同程度的复杂性。 此外,如果图中的类都可以点击它会很高兴。 我不一定需要生成文档。

如果你的目标是产生从PHP项目的类图,我发现比使用PHP_UML一个更好的解决方案。 你可能想要的是BoUML,有了这个软件,你可以选择一个PHP项目文件夹和逆向工程它。 然后创建一个类图。 当你拖放在它的类,关系是否有不同于AlgoUML(如果我没看错)。 XMI文件将不再在这种情况下非常有用。



文章来源: Generation of Class Diagram from XMI