2018-08-28

else ifはクソ

※微修正した

 

まり語られないがelse ifは割とクソだと思う

数年前からかなり避けてる

 

if (条件A) {

 処理A

}

else if (条件B) {

 処理B

}

else if (条件C) {

 処理C

}

else {

 処理D

}

 

処理Cが実行されるかどうかを考えようとすると、条件Aと条件Bと条件Cを見なければならない

条件A、B、Cがメソッドだったり複合した条件だったり、その時時で変化したりするともう最悪

  • 処理Aと処理Bを見なければならない 条件Aと条件Bさえ見ればよくない?

  • え、代替は? switchでもそれは同じだよね

    • 言語によってはswitch、switchが使いづらい場合は極力ifだけみたいな感じ   func hoge {  if (条件a) {   処理a   return  }  if (条件b) {   処理b   return  }  if (条件c) {   処...

      • 処理Cが実行されるかどうかを考えようとすると、条件Aと条件Bと条件Cを見なければならない は変わらないのでは?

        • ああすまん、そうなるなこれ return が余計 でもreturn抜いてもそう見えちゃうな、端的に書けないのか   条件は全部独立を保った状態(要はswitch状態)にして作る どれかにしか入らない...

      • 条件A、条件Bを見ないと条件Cが判定されるかどうかわからない点は変わらなくね?

記事への反応(ブックマークコメント)

ログイン ユーザー登録
ようこそ ゲスト さん