Rubyクックブック読書会#2

いつもの如く参加してきました。本日は、「第8章 テスト、デバッグ、最適化、文書化」を取り上げ、P301-P326を読みました。以下、メモ。

  • UnitTestは取り扱ったものの、今回の範囲ではデバッグ関係の内容が主だった。
  • rescue節にて、$!を使うのは良くない。Rubyなら e という変数にバインドする。
  • Kernel#callerで取り出せるのは、「文字列の配列」まで。Rubyには、トレースバックオブジェクトが用意されていないので、Python使いには不満。
    • Ruby的には文字列として出力できれば不満はない?
    • 行番号を取得するには、文字列解析が必要・・・
  • Rubyユニットテストは assert, assert_raise の2つがあればおおよそ十分で、Floatの値を扱うために、assert_in_delta を使えば全対応可能。
  • FlexMockが面白い。モデルも勉強になるし、言語としての語順もなかなか。
  • Rubyの起動オプションで、 -e0 -- --pattern '/_test/' がよく判らなかった。
    • 後ろの --pattern '/_test/' の方は、ファイル名に "_test" という文字列を含むファイルにマッチすることは確認。

パラパラ拾い読みしてみると、第8章は後半(P326-P343)の方が面白そうですので、適当に時間を見つけて読むことにします。