アキはフリーランスのプログラマーです >> Java >> PMD
Sponsored link

このエントリーを含むはてなブックマーク このエントリーを含むECナビ人気ニュース

PMD(プログラム規約違反発見ツール)

公式サイト http://pmd.sourceforge.net/

何の略かは複数ありますが私的にはプログラム規約違反発見ツール(Programming Mistake Detector)と思っています。


PMDとはプログラム中のコーディングスタイル違反を見つけるためのツールです。

コーディング違反をしているところは、バグの温床になってる場合もあり、

コンパイラーやテストツールで見つかられないバグを発見するのに役に立つでしょう。


AntやEclipseなどからも実行できます。

結構細かい所の指摘が多いです。しかし直さない理由は惰性が多いと思います。

いい習慣を身につけるのはいいことです。

■Ant使用例

<pmd printToConsole="true" failOnRuleViolation ="true"
rulesetfiles="rulesets/imports.xml,
rulesets/unusedcode.xml,rulesets/basic.xml,
rulesets/design.xml,rulesets/braces.xml">
 <fileset dir="src">
 <include name="**/**/*.java"/>
 </fileset>
 </pmd>
 

ルール

PMDを実行するときに、チェックするルールを指定できます。

どういったルールがあるか

Basic 制御文の空の検出など基本的なコードチェック(必須)

■Naming

■Unused Code

Design こまかい

Import Statements import文に関して(微妙)

■JUnit Tests

Strings 文字列の使い方をチェック

Braces {}をつけろという話

■Code Size

■Javabeans

■Finalizers

■Coupling

Strict Exceptions Exceptionの書き方のルール

■Controversial


カスタム

以下のように自分好みに、不必要なruleを抜いたものを作成も可能です。

<?xml version="1.0"?>
<ruleset name="mybraces">
 <description>Just the braces rules I like</description>
 <rule ref="rulesets/braces.xml">
  <exclude name="WhileLoopsMustUseBracesRule"/>
  <exclude name="IfElseStmtsMustUseBracesRule"/>
 </rule>
</ruleset>


このエントリーを含むはてなブックマーク このエントリーを含むECナビ人気ニュース