2009-07-22 78 views
7

寻找一种工具,它:应用来生成Java类层次结构图

  • 产生一个视觉上令人愉悦(未花哨),正交结构图层级
  • 输出高品质的PNG图像(300dpi的+)
  • 在视觉上区分类,抽象类,接口和枚举类型(最好通过颜色)
  • 交互式用户界面
  • 允许修剪程序包和/或单个类图
  • 种子(例如,文件»打开)使用一组:
    • 目录
    • JAR文件
    • 单独源文件
    • 个人编译的类
  • 执行全自动分析班级依存关系
  • 个搜索CLASSPATH以解决尽可能多的满足的依赖关系尽可能
  • 用单一的可执行
  • 是轻量级(〜5MB)和快速(负载在一秒钟之内的平均1.5GHz的机器上)
  • 是简单的(10岁以下点击生成图表)
  • 是在几秒钟内迅速(图100名对象)
  • 易于使用(最小接口,专注于图形生成)
  • 是OSS或GPL
  • (可选)生成一个调用图层次结构

工具不会完成这项任务包括:

  • 的Doxygen + GraphViz的(或点)
  • 的Eclipse
  • UML建模师
  • 结构分析为Java(无法解析的源文件)
  • JUDE社区(awkard界面,不适合自动生成)
  • In专门的开发环境(太复杂,并使用太多的内存)

任何想法?

+0

我会感兴趣,如果你找到一个解决方案。我所知道的能够做所有这些事情的程序既不是开源的,也不是轻量级的(也不是免费的)。 – Nick 2009-07-23 04:46:48

+0

哪些要求最灵活?我不确定你会找到一个符合他们所有人的。一个只有2天的java的高中生是否真的需要分析具有10,000个对象的图形? – 2009-07-23 05:10:39

+0

你的“视觉吸引力”的链接是找不到页面 不幸的是,你找不到页面。 – 2011-03-16 05:16:18

回答

2

Netbeans UML插件将覆盖您的一些要求。

  • 产生一个视觉上的吸引力图层级:口味的问题
  • 写出高质量的PNG图像(300DPI +):我不知道
  • 视觉上区分类,抽象类,接口和枚举类型:是它,因为它使用UML
  • 交互式用户界面:
  • 允许包和/或个别类别的修剪从图中:是
  • 种子(例如,文件»打开)使用一组:它与NetBeans合作项目
    • 目录
    • JAR文件
    • 单独源文件
    • 单独编译的类
  • 执行全自动肛门ysis:也许
  • 用单一的可执行文件:不适用,这是Netbeans的的插件
  • 重量轻,速度快:喜欢的NetBeans
  • 简单,快捷,且易于使用:依赖用户
  • 是OSS或GPL:我认为这是开源软件,当然它是免费的,如免费的饮料
  • (可选)生成一个调用图hierarc HY(除一类层次结构):我不认为它
3

答案可能是“没有这样的OSS /免费的应用程序存在”。为什么?因为:

  1. 谁想要大量的类继承 图大多数人已经在IDE或相似的情况下 工作。对于OSS开发人员来说,Ergo没有什么动力来生产这样的工具。
  2. 自动创建视觉 吸引人的大图号 几乎是不可能的。

我建议你放松你的要求。我的意思是,使用大规模IDE或UML建模器时出了什么问题?内存很便宜。等待几秒钟加载/运行图解器有什么不妥?耐心蚱蜢!具有2天培训的高中学生将会考虑拥有10,000多个班级的源代码库?

3

看来Class Visualizer符合您的所有要求(除了将图保存为PNG)。