Drei Tools für die einfache und effektive Überprüfung von Java-Code

Unter den getesteten Tools fand ich drei, die stark genug waren und die das Kriterium der IDE-Unterstützung erfüllten: PMD, Checkstyle und Jalopy.

PMD und Checkstyle
Der PMD-Dokumentation zufolge überprüft das Tool den Code auf die folgenden Punkte:

  • nicht verwendete lokale Variablen
  • leere catch-Blöcke
  • nicht verwendete Parameter
  • leere if-Anweisungen
  • doppelt vorhandene import-Anweisungen
  • nicht verwendete private Methoden
  • Klassen, die Singletons sein könnten
  • kurze/lange Namen von Variablen und Methoden

Checkstyle untersucht die folgenden Dinge:

  • Javadoc-Kommentare
  • Benennungsregeln
  • Header
  • import-Anweisungen
  • Überschreitung vorgegebener Größen
  • White Space
  • Modifier
  • Blöcke
  • sonstige Überprüfungen (einschließlich einiger nützlicher Kontrollen, wie z.B. auf überflüssige System.out- oder printstackTrace-Befehle)

Arbeitsweisen
Im Gegensatz zu PMD kann Checkstyle zwar Javadoc-Kommentare überprüfen, PMD bietet dafür allerdings eine nützliche Funktion namens CPD, die nach kopiertem und eingefügtem Code sucht. Die Fehler, die PMD am häufigsten fand, waren nicht verwendete Import-Anweisungen, nicht verwendete private Variablen und die gelegentlich auftretenden doppelten Literale. Checkstyle spürte sehr viel mehr Fehler auf. Neben der Erkennung fehlender Javadoc-Kommentare fand es unter anderen auch Zeilenbreiten über 80 Zeichen, nicht regelkonforme Variablennamen und die Verwendung von Tabulatoren anstelle von Leerzeichen. Bei beiden Tools hat man die Möglichkeit, seine eigenen Regeln zu erstellen.

Wenn man überlegt, eines dieser beiden Tools für seine Organisation anzuschaffen, scheint Checkstyle die bessere Wahl zu sein: Es überprüft die meisten Dinge, die von Unternehmensregeln für Code gefordert werden. PMD ist eine gute Wahl, wenn man sich hauptsächlich um die Verbesserung der Qualität des Codes kümmern muss. Will man jedoch einen Schritt weiter gehen und benötigt ein Tool, das den Code tatsächlich auch selbst repariert, sollte man sich Jalopy anschauen.

Jalopy
Jalopy ist ein leicht zu konfigurierender Quellcode-Formatiere, der ein Reihe von Mängeln in Java-Code aufspüren und beheben kann. Dabei ist Jalopy eigentlich eher ein Tool für die Reparatur von Code, statt nur für seine Überprüfung. Jalop-Plug-ins gibt es für die meisten IDEs und in den meisten Fällen lassen sie sich auch recht nahtlos in die IDE integrieren. Jalopy erwies sich als ein besonders mächtiges Tool, das in der Lage ist, viele Dinge zu tun, die andere Tools nicht erledigen können. So kann es zum Beispiel die Code-Einrückung, die Ausrichtung der geschweiften Klammern und den Zeilenumbruch nach einer bestimmten Zeichenanzahl reparieren sowie relevante Javadoc-Kommentare einfügen und import-Anweisungen sortieren. Das Beste an Jalopy ist jedoch seine großartige Konfigurierbarkeit. Eine einfache Benutzeroberfläche erlaubt die Einstellung fast aller Funktionen von Jalopy, so dass die Einstellung mit Hilfe von XML-Konfigurationsdateien überflüssig ist.

Keine Ressourcen verschwenden
Anstatt sich durch Code-Reviews zu kämpfen und wertvolle Ressourcen für eine Arbeit zu verschwenden, die häufig nicht besonders viel erreicht, empfiehlt sich der Einsatz eines dieser Tools. Wenn diese Tools die Überprüfung von Code erst einmal in eine einfache Aufgabe verwandelt haben, kann man seine Code-Reviews regelmäßig durchführen und nicht mehr nur ganz am Ende von Projekten, wenn näher rückende Deadlines das Leben eh schon schwer genug machen. Die Tools ermöglichen auch die Integration in Apache Ant, wodurch es leicht möglich ist, den Code-Checker auch täglich laufen zu lassen, während ein Build abgenommen wird oder wenn andere Tests durchgeführt werden. Behalten Sie die Kontrolle über Ihren Code und liefern Sie ein Produkt ab, von dessen hoher Qualität Sie selbst überzeugt sind.

Page: 1 2

ZDNet.de Redaktion

Recent Posts

Lags beim Online-Gaming? DSL-Vergleich und andere Tipps schaffen Abhilfe

Beim Online-Gaming kommt es nicht nur auf das eigene Können an. Auch die technischen Voraussetzungen…

2 Tagen ago

GenKI-Fortbildung immer noch Mangelware

Fast jedes zweite Unternehmen bietet keinerlei Schulungen an. In den übrigen Betrieben profitieren oft nur…

2 Tagen ago

Netzwerk-Portfolio für das KI-Zeitalter

Huawei stellt auf der Connect Europe 2024 in Paris mit Xinghe Intelligent Network eine erweiterte…

2 Tagen ago

Internet-Tempo in Deutschland: Viel Luft nach oben

Höchste Zeit für eine schnelle Kupfer-Glas-Migration. Bis 2030 soll in Deutschland Glasfaser flächendeckend ausgerollt sein.

2 Tagen ago

Erste Entwickler-Preview von Android 16 verfügbar

Schon im April 2025 soll Android 16 den Status Plattformstabilität erreichen. Entwicklern gibt Google danach…

2 Tagen ago

Kaspersky warnt vor Cyberangriff auf PyPI-Lieferkette

Die Hintermänner setzen KI-Chatbot-Tools als Köder ein. Opfer fangen sich den Infostealer JarkaStealer ein.

3 Tagen ago