Sponsored link
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>