Rubyで唱えるとっておきの魔法集
久々に読書タグです。
今回は
- 作者: Paolo Perrotta,角征典
- 出版社/メーカー: アスキー・メディアワークス
- 発売日: 2010/08/28
- メディア: 大型本
- 購入: 18人 クリック: 533回
- この商品を含むブログ (122件) を見る
だいぶ前に立ち読みした時はなんか難しそうだなと身構えていたのですが、じっくり読んでみると意外と難しいってことはなかったかなと思いました。もちろん普通のプログラミングよりはなんかよくわからないところがありますが、なんだかんだで断片的に知っていたことが多かった気がします。ただ、あくまでも「ちょっと知ってる」というだけであって、それで何かできるのかといわれると言い返せない感じです。ちょっと悔し。
中身のほうですが、大まかには2部構成になっています。前半はあなたと先輩Rubyistのビルによる1週間のメタプログラミング問答です。Rubyのインタープリターがどうやってメソッドを呼び出しているかの説明から始まり、しまいにはRubyの算術演算を書き換える黒魔術まで披露してくれます。ちょっとしたクイズ形式になっているので、一度手を動かしてみることができれば動かしてみるといいかもしれません。
後半はVer.2系のRuby on Railsを実例にとって、メタプログラミングの実例を観光気分で俯瞰する感じになっています。古いコードとはいえ、ActiveRecordのメンバーにアクセスするメソッドの挙動を解説してくれたのもいい感じです。どうなっているんだろうと気になっていたところだったので、いいタイミングでした。最後におまけとして
ちなみに私がいちばん膝を打ったテクニックはselfをyieldするものでした。設定クラスでやるとRailsやそのプラグインでよく見るあの感じになるんだろうな…