PMD (software)

PMD (software)

PMD is a static ruleset based Java source code analyzer that identifies potential problems like:
* "Possible bugs" - Empty try/catch/finally/switch blocks.
* "Dead code" - Unused local variables, parameters and private methods
* Empty if/while statements
* "Overcomplicated expressions" - Unnecessary if statements, for loops that could be while loops
* "Suboptimal code" - wasteful String/StringBuffer usage
* Classes with high Cyclomatic Complexity measurements.
* "Duplicate code" - Copied/pasted code can mean copied/pasted bugs, and decreases maintainability.

While PMD doesn't officially stand for anything, it has several unofficial names, the most appropriate probably being "Programming Mistake Detector".

Typically, PMD errors are not true errors, but rather inefficient code, i.e. the application could still function properly even if they were not corrected.

Rulesets

PMD includes a set of builtin rules and supports the ability to write custom rules.

Copy/Paste Detector (CPD)

The Copy/Paste Detector (CPD) is an add-on to PMD that uses the Karp-Rabin string matching algorithm to find duplicated code.CPD works with Java, C, C++, and PHP code.

Plugins

PMD has plugins for JDeveloper, Eclipse, JEdit, JBuilder, Omnicore's CodeGuide, NetBeans/Sun ONE Studio, IntelliJ IDEA, TextPad, Maven, Ant, Gel, JCreator, and Emacs.

External links

* [http://pmd.sf.net/ Home page] at SourceForge.net.

* [http://pmdapplied.com/ Book: "PMD Applied"] . Written by the lead developer, Tom Copeland (http://tomcopeland.blogs.com/).


Wikimedia Foundation. 2010.

Игры ⚽ Нужен реферат?

Look at other dictionaries:

  • PMD (Software) — PMD Maintainer Tom Copeland, Xavier Le Vourch Aktuelle Version 4.2.6. (14. September 2011) Aktuelle Vorabversion 5.0 …   Deutsch Wikipedia

  • PMD — may refer to:* LA/Palmdale Regional Airport (IATA: PMD), a commercial airport in Palmdale, California * PMD (rapper), member of group EPMD and solo artist * PMD (software) code analyzer for Java * PMD 85 8 bit personal computer produced in… …   Wikipedia

  • PMD — steht für: Partido Milénio Democrático, eine Partei in Osttimor Photonic Mixer Device, ein optischer Sensor Polarisationsmodendispersion eine Serie von tschechischen Heimcomputern, unterstützt vom Emulator M.E.S.S. eine Software zum Finden von… …   Deutsch Wikipedia

  • Comparison of Continuous Integration Software — Contents 1 About Continuous Integration Software 2 Comparison 3 See also 4 References About Continuous Integra …   Wikipedia

  • Project Object Model — Maven ist ein Build Management Tool der Apache Software Foundation und basiert auf Java. Mit ihm kann man insbesondere Java Programme standardisiert erstellen und verwalten. Inhaltsverzeichnis 1 Konzeptionelles 1.1 Der Standard Lebenszyklus 1.2… …   Deutsch Wikipedia

  • List of tools for static code analysis — This is a list of significant tools for static code analysis.Historical products* Lint the original static code analyzer of C code.Open source or Noncommercial products .NET (C#, VB.NET and all .NET compatible languages) *… …   Wikipedia

  • Code-Duplikation — Als Code Duplizierung (code duplication) wird in der Informatik das Auftreten der gleichen Codestruktur an mehreren Stellen im Programmcode bezeichnet. Duplizierter Code entsteht gewöhnlich durch Kopieren vorhandener Programmteile und gilt als… …   Deutsch Wikipedia

  • Code-Duplizierung — Als Code Duplizierung (code duplication) wird in der Informatik das Auftreten der gleichen Codestruktur an mehreren Stellen im Programmcode bezeichnet. Duplizierter Code entsteht gewöhnlich durch Kopieren vorhandener Programmteile und gilt als… …   Deutsch Wikipedia

  • Code duplication — Als Code Duplizierung (code duplication) wird in der Informatik das Auftreten der gleichen Codestruktur an mehreren Stellen im Programmcode bezeichnet. Duplizierter Code entsteht gewöhnlich durch Kopieren vorhandener Programmteile und gilt als… …   Deutsch Wikipedia

  • Sonar (Entwicklungswerkzeug) — Sonar Sonar Dashboard Basisdaten Aktuelle Version 2.10 (18. August 2 …   Deutsch Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”