この記事はパーフェクトRuby Advent Calendar 2013 - Adventar の7日目です。前の日のエントリーはhttp://d.hatena.ne.jp/joker1007/20131205/1386261276でした。
私自身、本業はプログラマではありません。ですのでド素人から見た、この本のよさを語りたいと思います。
##パーフェクトRubyとの出会い
今年の6月末くらいから趣味でRubyを触り始めました。
たのしいRuby 第4版
で簡単に全体像を掴んだあと、メタプログラミングRuby
に挑戦してRubyって自由だなとあらためて思いました。ですが、いざ実用的なソフトを書こうとするとお作法がよく分からなくて、困っていまいました。せっかくRubyをはじめたのだから、github
でコードの書き方を勉強しようとしても、Gemfile
とかRakefile
とかが、よく分からない状態ですし・・・
そんなときに出会ったのがこの本でした。
他の方も書いておりますが、Part4 標準添付ライブラリ
とPart5 実践プログラミング
が実用的ですごく役立っています。
##読み返す度に発見のある本
自論ですが良い本は読み返す度に新たな発見がある本だと思います(その点、この本は噛むほど味のでるスルメのような本だと思います)。
最近読んでいて、へぇと思ったところを何か所か紹介します。
-
12-5-13 インストールしたgemパッケージを元に戻す(p.435)
gem pristine <package>
でインストール時点まで戻すことができます。このおかげでpry
とか仕込んでコードを変えてしまっても大丈夫というわけです。 -
13-5-5 C APIの情報(p.454)
C言語でRubyの拡張ライブラリを書くときに参考になるサイトが紹介されています。最近少しCの実装を見る機会があったときに重宝しました。なかなかまとまった情報が得にくかったので、助かりました。 -
14-1-3 Bundler binstubsオプション(p.464)
bundle install
したときはbundle exec
しないといけないのですが、bundle install
時に--binstubs
オプションを渡すことでbundle exec
なしで実行できるようになります。使うかどうかは分かりませんが、こんな機能があったのだなぁと。
知っている方々にとっては当然かもしれない細かな部分って、なかなか勉強しにくかったりするのではないでしょうか。そういったところも上手くフォローしれくれているという印象の一冊です。冬休みにざっと目を通してみると、新しい発見があるかもしれませんよ!
私も全部は読み切れていないので、また冬休みに読んでみようと思います。
次のAdvent Calendarはtachi1982さんです。よろしくお願いします。