メタプログラミングRuby第2版を読んだ

前の版のメタプログラミングRubyは読んでいたが、Ruby1.8時代の本なので、人におススメするには今となっては少し古いなぁと思っていたところ、タイムリーな感じで第2版を見つけたので読んでみた。

内容自体は第1版で読んでいたり、その後、実際に使っていたものだったので、個人的には難しくは感じなかったが、まぁまぁ読みやすくまとまっているかな、という感じ。

Ruby初心者(かつそれなりに何かほかのプログラミング言語を一つは扱っている人)にススメル場合は、実行環境そろえて試行錯誤しながらやるように仕向けないと難しいかな。
逆に言うと、それができないような人には難しいと思うが、できる人なら理解するのは難しくないかなぁと思った。

特異メソッドの意味やメソッド探索順、method_missingやdefne_method, evalやメソッド定義やincludeの時のフックなどなど、まぁRubyが理解できるようになるのではないかと。

ただ、最近のRuby2.4.0で、Refinement回りが扱いやすく変更されていたりして、この手のRuby本は本当に陳腐化するのが早いなぁと感じるところ。そして、昔からRubyを使っている人ほどそう感じていて、Rubyは(perlとかシェルスクリプトと比べて)すぐに互換性がなくなるから注意しないと使えない、と思われていたりするので、面倒なことがあったりする。

まぁ、シェルスクリプトですぐに書けることをわざわざRubyで書いたりする方が悪いだろ、とも思うが、、、。

まとめると、内容をすでに知っているので、中立的な観点からは言えないかもしれないが、本はまぁまぁよかった。試行錯誤しながら読むと十分理解しやすい内容と思う。
でも、第1版を読んでいるなら、EffectiveRubyを読む方がいいかも?とは思ったかなぁ~

コメントを残す