否定のELSEは基本的に避ける

否定のELSEは基本的に避ける

  • こういうのを見るとモヤモヤします
if (!empty($foo)) {
    // 正常処理
} else {
    throw new \Exception('foo is empty');
}

理由

  • !emptyで空でない時という条件を指定しておきながら、逆説のELSEをとってしまうところ
  • たしか、これに違和感を覚える様になったのはPBP(Perl Best Practice)の影響かな?

備考

  • ただし、正常処理が少し長くなる場合に異常系を先に見せるとかであれば許容します