著作一覧 |
endで終わるのってつまらなくないか?
というか、元々は次のように書いていて、それはバグなのであった。
File.open('foobar').each_line do |line| ... end
これだとオープンしたファイルはクローズされない。
で、書き直してみる。
File.open('foobar') do |fin| fin.each_line do |line| ... end end
なぜ、ここでネストが必要なんだ?
と、いやんな感じがするので書き直す。
fin = File.open(
っていうか、RAIIじゃないし、とこれは早々にやめる。
そこで
File.open('foobar').each_line do |line| ... end.close
お、いいじゃん。
なんといっても最後が良い。「お終い。〆」という感じ。
そこで代わりに{}を使うと
File.open('foobar').each_line {|line| ... }.close
なんかぱっとしない。
ジェズイットを見習え |
IO.foreach(path){|line| ...}
おお、こんなものが。何がforeachかわけわからないので使う気にはまったくならないけど、覚えておきます。どうもありがとうございます。