PMD design系によく引っかかる

  • Avoid unnecessary comparisons in boolean expressions

=と間違えるからダメなのかな。

ダメ
if(xxx==true){
//
}

直し
if(xxx){

}

  • Avoid unnecessary if..then..else statements when returning a boolean

くどいぐらいが、コード読みやすいと思うのだけど、これも逆のときとの違いを明らかにするためと思って我慢しよう。
ダメ
if(isValidPath(fileOpenPage.getFilePath())
&& isValidPath(perlPathPage.getPerlPath())){
return true;
}else{
return false;
}
直し
return isValidPath(fileOpenPage.getFilePath())
&& isValidPath(perlPathPage.getPerlPath());

  • All methods are static. Consider using Singleton instead

ダメ
public static void main(String argv[])だけのclass
直し
検査の対象からはずしました。

ちなみに、PMD検索時
-"PMD Results" ではずした方が自動PMDを回避できます。