有没有一种工具可以查看我的Java代码并提出良好的程序包结构?

时间:2020-03-06 14:49:52  来源:igfitidea点击:

我有一个很大的代码库,并且我想重构包的结构,以使相互影响很大的类进入同一包。

似乎应该可以创建一个工具,该工具可以查看类之间的交互,然后将那些交互性很强的类组合在一起。然后,这些分组可能会为程序包建议一个良好的层次结构。

是否存在这样的工具? (首选开源)。

解决方案

尝试一些意大利面(请参阅http://freshmeat.net/projects/pastatool/)

IntelliJ在此方向上具有一些代码矩阵工具。

JDepend至少可以告诉我们设计是否正确。它鼓励对高度抽象的程序包的依赖(大概比那些具有较少抽象代码的程序包的更改更少),并在程序包具有循环依赖项时向我们发出警告。我认为这是一个很好的现实检查。

有很多使用它的方法,包括作为Eclipse插件。

我们可以尝试Lattix,它使用"依赖关系结构矩阵"在类和包级别向我们显示代码中的依赖关系和隐藏结构。过去,我发现它对这种东西很有帮助。

http://www.lattix.com/

Structure101是另一种产品,可以分析代码的结构并进行依赖性和假设分析。

http://www.headwaysoftware.com/products/structure101/index.php

Structure Analysis for Java是一个Eclipse插件,它可以进行一些依赖性分析:

http://stan4j.com/