PMD / RuleSet / Design



問題のあるデザインを見つけるためのルール

ConfusingTernary

else を伴う if 文で、否定的な条件によるテストをしているかを検知します。これは、条件演算子(?:) のときもチェックします。

このルールの意図するところは 2つ。

  • 否定的な条件による判定は、コードを可読性を下げる。素直に肯定的に判定したほうがよい。しかし、else がない場合は、この限りではない。
  • 実装時の順番を考える必要がなくなる。エラーの処理を先に書くべきか、通常時の処理を先に書くべきか。