我有一个很大的代码库,我想重构一下这个包结构,以便大量交互的类放在同一个包中。
似乎应该可以创建一个工具来查看类之间的交互,然后将那些交互严重的类组合在一起。然后,这些分组可能会建议包的良好层次结构。
这样的工具是否存在? (首选开源)。
答案 0 :(得分:4)
Structure101是另一种可以分析代码结构并进行依赖和假设分析的产品。
http://www.headwaysoftware.com/products/structure101/index.php
答案 1 :(得分:1)
您可以尝试使用Lattix,它使用依赖关系结构矩阵在类和包级别显示代码中的依赖关系和隐藏结构。我发现它过去对这种东西很有帮助。
答案 2 :(得分:1)
Structure Analysis for Java是一个Eclipse插件,可以进行一些依赖性分析:
答案 3 :(得分:0)
尝试一些意大利面(见http://freshmeat.net/projects/pastatool/)
答案 4 :(得分:0)
IntelliJ在这方面有一些代码矩阵工具。
答案 5 :(得分:0)
至少可以告诉你,如果你在设计方面走在正确的轨道上的是JDepend。它鼓励对高度抽象的包的依赖(可能会比使用不那么抽象的代码的包改变更少)并且当你的包具有循环依赖时会警告你。我觉得这是一个很好的现实检查。
有很多方法可以使用它,包括Eclipse plugin。