« WARI is released!Don't develop for living and you will be a better developer »

Essential develper's toolkit

03/08/09

Permalink 11:44:59 am by nemanja, Categories: all about Java

Putting hundreds of lines of code together is one thing, but putting them right is something completely different.

If you really want to know what you are writing, put these in your toolkit:

1. Structure101

Amazing tool. Shows you architectural violations and extensive code complexity.
It is so easy to break your architecture and overly complicate your classes.
After every milestone I check my architecture with Structure101 and almost always I need to do refactoring after that.

2. PMD

PMD is basically using rules from “Effective Java” book by Joshua Bloch. It is useful to have your code marked immediately after making some violation then going through the book and validating if you have done it right.
I don’t agree with all the rules used in PMD (like Controversial Rules for example - specifically DD anomaly) but you can switch some rules off.

3. FindBugs

Similar to PMD. Good to have as much code analyzers as possible that automatically run in background.

4. TomcatProbe

If you are writing web applications running under Tomcat this tool can be useful.
Its not super useful, but gives you some high level info about memory consumption and other stuff. Good to have, but if I would find some better and free profiler tool that can be used as easily as this one, I would be happy to use it.

I have also worked with some others tools Hammurapi, SonarJ, Profiler4J etc. but I am not very satisfied with those. Some are very hard to install (Hammurapi), some don’t work in Mac OSX (SonarJ), some are still in beta (Profiler4J) etc.

Can you suggest some other free code/architecture analyzer tool?
I would be happy to hear you experience.

1 comment

Comment from: Duc [Visitor] Email · http://www.innovit.com
I've been using VisualVM, which is now bundled with jdk 1.6. It's the best tool so far for profiling cpu and memory usage. Once started it automatically detect running Java applications and profile them if you want. For code analysis, FindBugs is the best although I would like it to have web report so we can integrate with the build report.

Cheers,
Duc
03/08/09 @ 18:32

This post has 5 feedbacks awaiting moderation...

Leave a comment


Your email address will not be revealed on this site.

Your URL will be displayed.
(Line breaks become <br />)
(Name, email & website)
(Allow users to contact you through a message form (your email will not be revealed.)