I have a Java project that I've been working on for a while. The design started out pretty good but slowly degraded as changes were made. I'm looking for some sort of tool that will analyze the project. It'd be really nice to have a map of the dependencies of different classes/methods. I feel like certain methods are only in there to fulfill a very specific goal. I'd like to eliminate unnecessary code and make my design better.
Any suggestions would be great! Thanks!
解决方案
You may want to check out JDepend. It was specifically developed to solve the problem you are facing.
Working as a consultant it is very common for me to be thrown in to a huge legacy code base. Typically the first thing I do is run JDepend on it to try to get my bearing on the code base and all of the dependencies.
Good luck.