トップページ⇒tech
408コメント99KB

コーディングトラブルの約70%はif文などでの{}省略

■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん2007/03/09(金) 14:02:01
自分は1行しか書かないつもりでも
あとでコードを足さなければならない事態なんていくらでもやってくる。
他人がきちんと中括弧補ってくれるかどうかはわからない。

1行文だろうがなんだろうが
最初から中括弧をつけるクセをつけろ
0396デフォルトの名無しさん2009/09/17(木) 15:18:38
>>1
ジョークかと思ったら、本気みたい。
0397デフォルトの名無しさん2009/09/18(金) 09:51:54
>>395
それだけじゃよく判らんが、無駄にブロックを作りたくないなら
if (! 続行条件) {
 終了処理...
}
続行処理...
とするか
if (続行条件) {
} else {
 終了処理...
}
続行処理...
としてもいいよね。
0398デフォルトの名無しさん2009/09/19(土) 12:11:51
"else if"をひとつながりで一つのキーワードにしてみるのはどうだろう。
マイクロソフトならやりかねない
0399デフォルトの名無しさん2009/09/23(水) 11:58:27
ほかの言語にはelifつーものがあってだな
0400デフォルトの名無しさん2009/09/24(木) 00:02:47
if 〜 else if は if 〜 else と違って if に対して処理が対象ではないから、
勘違いする人のためには elif が有ってもいいかもね。ダサイけど。
0401デフォルトの名無しさん2009/09/25(金) 11:04:48
>398はどれへのレスなんだ?
少なくとも>395はelse ifの話なんて全然してないわけだが。
0402デフォルトの名無しさん2009/09/25(金) 14:46:22
>>394
書かれたコードを問題にしているのではない。
書いた阿呆の無能さを問題にしているのだ。
0403デフォルトの名無しさん2009/09/27(日) 18:19:52
eclipseで自分仕様のスタイルが設定できなくて困る
一度間違ってソースが全部整形されてしまって、ヒストリで元に戻そうにも
そのミスをやってしまったのがかなり前だと判明したため泣きながら手作業で修正した
0404デフォルトの名無しさん2009/09/27(日) 18:31:08
そこで bc ですよ。
0405デフォルトの名無しさん2009/09/28(月) 11:20:30
暫くindentを改造して使っていたが、思い通りにいかないことが増えてきて捨てた。
今は必要なときに必要なところだけエディタで整形している。
0406デフォルトの名無しさん2009/09/28(月) 21:29:02
ideやら整形ツールで対応できないような一般的でないスタイルは捨てるというのはどうだろうか。
0407デフォルトの名無しさん2009/09/30(水) 15:01:54
エディタを俺仕様にカスタマイズするのは大分前にやめた。
自分をエディタに合わせる方が楽。
0408デフォルトの名無しさん2009/11/23(月) 20:43:16
ガード節による入れ子条件記述の置き換え
1. メソッドに正常ルートが不明確な条件付振る舞いがある
2. 特殊ケースすべてに対してガード節( メソッド内で、処理がメインロジックに到達するの
を防ぐためのコード) を使う
double getPayAmount() {
 double result;
 if (_isDead) result = deadAmount();
 else {
  if (_isSeparated) result = separatedAmount();
  else {
   if (_isRetired) result = retiredAmount();
   else result = normalPayAmount();
  }
 }
 return result;
}
 ↓
double getPayAmount() {
 if (_isDead) return deadAmount();
 if (_isSeparated) return separatedAmount();
 if (_isRetired) return retiredAmount();
 return normalPayAmount();
}
出口が1 つだけというルールは本当は有益ではありません。
1つにすることでメソッドが明瞭になるならば出口は1 つでいいが、そうでなければ使うべきではない
■ このスレッドは過去ログ倉庫に格納されています