C++やJava版でおなじみの定番技術書「Effective」シリーズのRuby版「Effective Ruby」が発売されていたので購入してみました。内容紹介に「小手先の対処法ではない骨太のRubyプログラミング技法を解説します」とあるように、全くRubyを知らない入門者向けの本ではなく、ある程度経験のある中上級者向けの本と位置づけられています。
普段なにげなくRubyを使っていても、細かいところになんとなく不安がある…といった方が、Rubyの細部の知識を勉強しなおすために使用すると役立つ内容かもしれません。
内容紹介
第1章は「Rubyに体を慣らす」。真偽値、nil、定数などRubyの基本的な部分に関する知識を復習することが出来ます。第2章は「クラス、モジュール、オブジェクト」。Rubyの独特な階層構造の組み立て方から始まり、superの使い方、Structの使い方、モジュールによる名前空間の利用方法、Comparableによる比較演算子の実装などに関して分かりやすく解説されています。第3章はRubyを使いこなす上で避けては通れない「コレクション」の使用方法。reduceは知らない人が多いかもしれません。第4章は「例外」に関して。rescue、ensure、retry、throwなど。例外処理を自信を持って行うことができそう。
5章「メタプログラミング」、6章「テスティング」、7章「ツールとライブラリ」、8章「メモリ管理とパフォーマンス」と続くのですが、まだ4章までしか到達していません。
全体的に、何故こうした方が良いのか、理由がきっちり書かれているのが好印象でした。全部の方法を自分のコーディングスタイルに取り込むかどうかは別として(細かい部分は人によって異なる意見の方もいると思います)、自分の知識を見つめ直すことができる良書だと思います。
監訳者のartonさんによる紹介も参考になると思います。気になる方は書店でチェックしてみてはいかがでしょうか。