- PMD (Software)
-
PMD Maintainer Tom Copeland, Xavier Le Vourch Aktuelle Version 4.2.6.
(14. September 2011)Aktuelle Vorabversion 5.0 Betriebssystem plattformunabhängig Programmiersprache Java Kategorie Entwicklungswerkzeug Lizenz BSD-style pmd.sourceforge.net PMD ist ein Werkzeug für die Statische Code-Analyse von Java-Quelltexten. Der Name PMD selbst hat offiziell keine ausgeschriebene Bedeutung.[1]
Inhaltsverzeichnis
Fehlerkorrekturen
Die Fehler, die PMD findet, sind typischerweise keine echten Fehler, sondern eher ineffizienter Code, d. h. die Software wird in der Regel trotzdem korrekt ausgeführt, wenn die Fehler nicht korrigiert werden. PMD findet auf Basis von statischen Regeln potentielle Probleme wie beispielsweise:
- Mögliche Bugs – Leere try/catch/finally/switch-Blöcke.
- Toter Code – Ungenutzte Lokale Variablen, Parameter und private Methoden
- Leere if/while-Ausdrücke
- Überkomplizierte Ausdrücke – Unnötige if-Ausdrücke, oder for-Schleifen, die while-Schleifen sein könnten
- Suboptimaler Code – verschwenderische Nutzung von String/StringBuffer
- Klassen mit hoher Zyklomatischer Komplexität.
PMD bietet eine Vielzahl eingebauter Regeln und die Möglichkeit, eigene Regeln zu schreiben.
Erweiterungen und Plug-ins
Der Copy/Paste Detector (CPD) ist ein Zusatz für PMD, der den Rabin-Karp-Algorithmus nutzt, um duplizierten Code zu finden. CPD kann auf Java, C, C++ und PHP angewendet werden. PMD hat Plug-ins für die Entwicklungsumgebungen JDeveloper, Eclipse, JBuilder, NetBeans, JCreator und IntelliJ IDEA, die Editoren JEdit, Emacs und TextPad, die Build-Tools Apache Maven und Ant, sowie die statische Code-Analyse-Plattform Sonar.
Alternativen
Im Java-Umfeld werden üblicherweise neben PMD auch noch Checkstyle und FindBugs für denselben Zweck wie PMD eingesetzt.
Einzelnachweise
- ↑ What does it mean? pmd.sourceforge.net, abgerufen am 12. Juni 2008.
Weblinks
- Buch: "PMD Applied" (englisch). Tom Copeland.
Kategorien:- Java-Programmierwerkzeug
- Freies Programmierwerkzeug
Wikimedia Foundation.