2008年2月 7日

[ruby-list:44579] Re: Ruby初心者が作りました

From: Kabu and Ruby管理人 <kabu_and_ruby@xxxxx>
Subject: [ruby-list:44578] Ruby初心者が作りました
Date: Thu, 7 Feb 2008 00:03:34 +0900

るびきちです。

> http://www.geocities.jp/kabuandruby/index.html
> 株価を自動DLします。

> いろいろ意見をもらえたらと思います。

コードを読んでみました。とりあえずコメントしときます。

* 日本語を含むコードなので一行目に「#! ruby -Ks」と入れてください。
「$KCODE='s'」していますが、それでは遅いです。
なぜなら、Rubyインタプリタがスクリプトを読む時点でスクリプトの文字コードが
Shift_JISであることを認識する必要があるからです。
* Rubyスクリプトの標準的なインデントは2です。インデントをきれいにしましょう。
* 自分でString#to_sjis(Stringクラスのto_sjisメソッド)を定義していますが、
「require 'kconv'」すればString#tosjisメソッドが使えます。
* CSVファイルの解析には標準ライブラリのcsv.rbを使ってみましょう。
自分で解析をがんばるよりもライブラリを使う方がバグを減らせます。
* regExは文字列ではなくて正規表現オブジェクトを使ってみましょう。
* 処理ごとに関数(メソッド)に分けると何をやっているかがわかりやすくなります。
* 「puts a.to_s + ' ' + b.to_s」は「puts "#{a} #{b}"」のほうがわかりやすいです。
#{}による式展開の結果が非文字列の場合は内部でto_sを呼んでくれます。
* エラーメッセージは「$stderr.puts」で標準エラー出力に出しましょう。

--
rubikitch
Blog: http://d.hatena.ne.jp/rubikitch/
Site: http://www.rubyist.net/~rubikitch/

投稿者 xml-rpc : 2008年2月 7日 00:34
役に立ちました?:
過去のフィードバック 平均:(0) 総合:(0) 投票回数:(0)
本記事へのTrackback: http://hoop.euqset.org/blog/mt-tb2006.cgi/69513
トラックバック
コメント
コメントする




画像の中に見える文字を入力してください。