Hi,
ich benutz jetzt checkstyle konsequent. All diese Tools scannen meinen Source code für Stilblüten, Unsauberkeiten und zeigen z.T. auch Verbesserungen auf. Alle sind openSource und es gibt sie auch als Eclipse-plugins. Sie sagen natürlich wenig über das OO-Design der Anwendungen. Nur eben ein paar Hinweise.
Vorallem kann man damit wirklich effektiv code conventions durchsetzen.
Wenn ich 2 Tage durchprogrammiere und dann checkstyle einklinke, hat der ca. 500 Warnungen. Hört sich nach viel an, aber 40% sind finals die quasi überall gesetzt werden sollten und 50% fehlende JavaDoc Kommentare. Überleg mir die Regel, die fehlende finals anmeckert ganz zu deaktivieren. Theoretisch bin ich dafür, aber ich hab noch kein funktionierende make-final-where-possible Eclipse plug-in gefunden (vielleicht sollte ich das selber machen). So lange ist es schon ein bischen langweilig jeden Tag ca. 200 mal final zu tippen.
Da ich z.T. Notes Agenten programmiere, hab ich die RegEx für Method Conventions im Namen von Lotus Notes in meiner checkstyle config geändert: ^([a-z][a-zA-Z0-9]*)|(NotesMain)$
. Die Methode NotesMain von AgentBase verstösst gegen die zu 99% verbreitete Konvention in Java, dass Methodennamen immer mit einem Kleinbuchstaben beginnen.
PMD geht noch ein paar Schritte weiter und meckert weitere Sachen an. Da sind aber auch false positives dabei. Durchaus aber sehr interessant, was das Tool so findet und auch die Begründungen.
Noch komplexere Metriken zur Analyse des Source Codes hat findbugs. Dazu passt offenbar mein Programmierstil gut, weil es kaum was findet.
Gruß Axel