バグ取りはエラーメッセージをきっちり読むことからでは?
バグ取りで遠回りしないためのヒント | 日経 xTECH(クロステック)
array1 = (1..100).to_a array2 = array1.select(|i| i%7 == 0) # !> useless use of == in void context # ~> -:2: syntax error, unexpected '|', expecting ')' # ~> array2 = array1.select(|i| i%7 == 0) # ~> ^ # ~> -:2: syntax error, unexpected ')', expecting $end
Rubyのブロックの「{}」を間違って「()」と書いた例なのだが、まずSyntaxErrorになる。しかもエラーメッセージが場所を教えてくれるから一番容易い類の問題だろう。っつーかバグ以前の問題だし。警告なりエラーメッセージをきちんと読むことからだと思うよ。Ruby初心者ならともかく、どこをどう間違えればこの問題の解決に30分もかかるのだろうか。
例外終了もまだかわいいバグ。 本当の「バグ」は間違ったプログラムがエラーも起こさずに動き続けることだろうよ。
あとは、徹底的な自動テストじゃないかと。
そうなのかなー。それが本当なら1kbのプログラムであっても30分近くディスプレイとにらめっこしないといけないのだが、相当目が疲れると思う…(^^;