アカウント名:
パスワード:
switch文でのミスってコードカバレッジでも見つけにくくなりますし、if文に書き直した方が安全なんでしょうかね。
コメントありがとうございます。
今回は、編集ついでに書きっぷりの気に入らないところも修正しようとしたらヤメレと言われてご機嫌斜めになったというエピソードでして、そんなところに「switch文はifに変えた方が安全かも」って聞いちゃったらますますモヤモヤしちゃうじゃないですかーーーー!!!
#今度書き直すときは気をつけてみます。##if文にも、else抜けというこわーい罠があるなり。。
#switch文ともいうし、case文ともいうし、switch-case文ともいう。。#まっ通じればいいんですけどね、多様ですなあ。。と思っただけ(^^)
Cでは
switch( value ) {case val1: ...... break;case val2: ....... break;...default: ......... break;}
と書きますが、Pascalでは
case ( value ) ofval1: begin ..... end;val2: begin ..... end;val3..val4: begin ,,,, end;else begin end;end;
の様に書くのです。だから switch-case 文だったり case 文だったりする。
ちなみに、私は case 文は Pascal 型の方が好き。「case文の最後に break; を書かないことで、処理記述量を減らす」のがCのswitch/case文の良いところだ、と良く言いますが、私25年もCでコード組んでいて、一度も その方が判りやすいコードになる パターンを見たことが無い。ずーっと break 文を書き忘れたのか、意図的なのか、悩まなくちゃいけないような場合ばかり。最終的に判るのは「書いた人はわざとそうしたかったらしいが、そのロジックはバグっている」とかいう身も蓋もない…
そんなことで悩まされるぐらいなら、なんども同じこと書く羽目に陥った方が楽じゃっ というのが Pascal 型 case 文が好きな理由ですね。
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
アレゲは一日にしてならず -- アレゲ見習い
よくいわれますが (スコア:1, 興味深い)
とくに最後の2節目あたりでやるとテスト抜けが多い。
Re: (スコア:0)
switch文でのミスってコードカバレッジでも見つけにくくなりますし、
if文に書き直した方が安全なんでしょうかね。
うっうっ (スコア:1)
コメントありがとうございます。
今回は、編集ついでに書きっぷりの気に入らないところも修正しようとしたらヤメレと言われてご機嫌斜めになったというエピソードでして、そんなところに「switch文はifに変えた方が安全かも」って聞いちゃったらますますモヤモヤしちゃうじゃないですかーーーー!!!
#今度書き直すときは気をつけてみます。
##if文にも、else抜けというこわーい罠があるなり。。
#switch文ともいうし、case文ともいうし、switch-case文ともいう。。
#まっ通じればいいんですけどね、多様ですなあ。。と思っただけ(^^)
pascal か、Cか (スコア:1)
Cでは
と書きますが、Pascalでは
の様に書くのです。だから switch-case 文だったり case 文だったりする。
ちなみに、私は case 文は Pascal 型の方が好き。「case文の最後に break; を書かないことで、処理記述量を減らす」のがCのswitch/case文の良いところだ、と良く言いますが、私25年もCでコード組んでいて、一度も その方が判りやすいコードになる パターンを見たことが無い。ずーっと break 文を書き忘れたのか、意図的なのか、悩まなくちゃいけないような場合ばかり。最終的に判るのは
「書いた人はわざとそうしたかったらしいが、そのロジックはバグっている」
とかいう身も蓋もない…
そんなことで悩まされるぐらいなら、なんども同じこと書く羽目に陥った方が楽じゃっ というのが Pascal 型 case 文が好きな理由ですね。
fjの教祖様