精华帖 (1) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|||||
---|---|---|---|---|---|
作者 | 正文 | ||||
发表时间:2010-01-09
最后修改:2010-01-11
引用:http://www.ibm.com/developerworks/cn/java/j-ap06108/ 我曾遇到过一些拥有十分美观的 UML 图的项目 — 在项目的初始阶段。问题是,在某种特殊情况下,技术负责人无法使模型与源代码同步。或者需要将宝贵的时间浪费在将源代码手动 反向工程到模型中。这两种情况都不尽如人意。如果模型无法如实地展示签入到版本控制库中的代码,那么这个 UML 图构造的再美观也毫无意义。如果您没有根据实际的代码制定决策,那么您可能就要面临随之而来的很多问题。 您可以在构建过程中生成图示,并建立一个持续集成(Continuous Integration,CI)环境来即时地(或定期地)创建图示。这样您就能够制作出有益于决策、易于创建且始终反映最新情况的图示了。 清单 1 使用 Ant、UMLGraph 以及 Graphviz 对源代码进行文档化:
清单 1 中,我结合使用 UMLGraph 和 Javadoc 在 Javadoc HTML 报告内部生成一些基本的 UML 类图。为了自定义展示在每一个类图中的信息,调用
图 1 展示了用 UMLGraphshows 生成到 HTML 中的 请 单击此处 查看完整图形。 UMLGraph 能够生成更复杂的关系和其他细节。但是,即便是这个简单例子中极其基本的 UML 类图,就已经提供了相当多的信息。它也可以根据当前的代码库快捷、形象地展示软件。它防止了 “代码应该 是这样的” 这种陈述方式,并且有益于做出更好的决策(关于描述了多种可以自定义 UMLGraph 输出的属性的链接,请参阅 参考资料)。
根据资料搭建好环境,我的ANT脚本: <?xml version="1.0" ?> <project name="UMLGraph" default="uml" basedir="."> <target name="uml"> <property name="reports.dir" value="${basedir}/reports" /> <mkdir dir="${reports.dir}" /> <path id="project.path"> <fileset dir="${basedir}/lib"> <include name="**/*.jar" /> </fileset> </path> <javadoc sourcepath="${basedir}/src" packagenames="*" package="true" encoding="UTF-8" charset="UTF-8" docencoding="UTF-8"> <doclet name="org.umlgraph.doclet.UmlGraphDoc" path="${basedir}/lib/UmlGraph-5.2.jar"> <param name="-d" value="${reports.dir}" /> <param name="-attributes" /> <param name="-enumerations" /> <param name="-enumconstants" /> <param name="-operations" /> <param name="-qualify" /> <param name="-types" /> <param name="-visibility" /> </doclet> </javadoc> <apply executable="dot" dest="${reports.dir}" parallel="false"> <arg value="-Tpng" /> <arg value="-o" /> <targetfile /> <srcfile /> <fileset dir="${reports.dir}" includes="*.dot" /> <mapper type="glob" from="*.dot" to="*.png" /> </apply> </target> </project>
生成的文档的UML图中类之间的关系没能表示出来。。。 另:像http://opensource.objectsbydesign.com/spring/中这种类型的结构是怎么生成的呢,UMLGraph 是否可以实现,希望大牛指点! UMLGraph版本:UmlGraph-5.2.jar graphviz版本:graphviz-2.26.msi
声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|||||
返回顶楼 | |||||
浏览 4593 次