Checkstyle

aus Wikipedia, der freien Enzyklopädie
Wechseln zu: Navigation, Suche
Checkstyle
Aktuelle Version 5.7
(3. Februar 2014)
Betriebssystem plattformübergreifend
Programmier­sprache Java
Kategorie Statische Code-Analyse
Lizenz GNU Lesser General Public License
http://checkstyle.sourceforge.net

Checkstyle ist ein in der Softwareentwicklung verwendetes Werkzeug für die Statische Code-Analyse zur Prüfung des Programmierstils von Java Sourcecode.

Einsatzgebiet[Bearbeiten]

Der in Softwareentwicklungsprojekten verwendete Programmierstil kann die Softwarequalität, Lesbarkeit und Wiederverwendbarkeit verbessern. Damit können die Kosten der Entwicklung und Wartung der Software reduziert werden. Checkstyle kann eine Reihe von automatisierbaren Prüfungen des Programmierstils durchführen. Diese Prüfungen können einzeln ein- und ausgeschaltet werden, sowie für den in dem zu prüfenden Projekt definierten Programmierstil konfiguriert werden. Das Fehlschlagen einer Prüfung führt je nach Konfiguration der Prüfung zu einem Fehler oder einer Warnung. Checkstyle kann um eigene Prüfungen erweitert werden.

Checkstyle ist kein Werkzeug zur automatisierten Erkennung von Programmierfehlern. Durch das Aufzeigen unerwünschter Programmierstile können aber mit Hilfe von Checkstyle Programmierfehler gefunden oder vermieden werden.

Checkstyle ist auch kein Werkzeug zur automatisierten Behebung fehlerhafter Programmierstile. Für Fehler in der Formatierung des Codes können Programme zur Quelltextformatierung eingesetzt werden.

Module[Bearbeiten]

Checkstyle kommt mit einer Reihe von Modulen welche Prüfungen zu bestimmten Themen enthalten. Diese Module können um eigene Module mit eigenen Prüfungen erweitert werden.

  • Annotations - Prüfungen zur korrekten Verwendung von Annotationen
  • Block Checks - Prüfungen von Codeblöcken
  • Class Design - Prüfungen zum Softwaredesign
  • Coding - Prüfungen allgemeiner Kodierungsrichtlinien
  • Duplicate Code - Prüfungen auf das Vorhandensein doppelten Codes
  • Headers - Prüfungen bezüglich Kopfzeilen von Sourcecodedateien
  • Imports - Prüfungen zur Verwendung von Imports
  • Javadoc Comments - Prüfungen zum Vorhandensein, der Vollständigkeit und Formatierung von Javadoc Kommentaren
  • Metrics - Prüfungen der Einhaltung diverser Softwaremetriken
  • Miscellaneous - diverse nicht in die anderen Module einordenbare Prüfungen
  • Modifiers - Prüfungen zur korrekten Verwendung von Zugriffsmodifikatoren
  • Naming Conventions - Prüfungen der Einhaltung definierter Namenskonventionen
  • Regexp - Selbst mittels regulären Ausdrücken konfigurierbare Prüfungen
  • Size Violations - Prüfungen zur Größe von Klassen, Methoden, Anzahl Parameter usw.
  • Whitespace - Prüfungen zur Formatierung des Codes hinsichtlich Leerzeichen

Einsatz[Bearbeiten]

Checkstyle wird als Java Archive geliefert und kann somit in jeder Java Virtual Machine und als Apache Ant Task laufen. Eine Reihe von Werkzeugen stellen Plugins für Checkstyle zur Verfügung, unter anderen auch Eclipse, Apache Maven oder Sonar

Geschichte[Bearbeiten]

Checkstyle wurde ursprünglich 2001 von Oliver Burn entwickelt und wird jetzt als Open Source Software von einer Reihe von Entwicklern gewartet und weiterentwickelt.

Alternativen[Bearbeiten]

Im Java-Umfeld werden üblicherweise neben Checkstyle auch noch PMD und FindBugs für ähnliche Zwecke wie Checkstyle eingesetzt.

Weblinks[Bearbeiten]