書評:『初めてのRuby』は『やり直しのRuby』でもある!
生まれて初めて書評というのを書いてみます。
Yuguiさん(id:yugui)より初めてのRubyを献本してもらいました。
一言で言うと、「濃い」です。プログラミング言語にはその言語独自の文化がありますが、それを言葉で説明するのは難しいです。それを著者のYuguiさんはやりとげています。
この本にはRubyの考え方がギッシリ詰まっています。しかも、これだけの内容で200ページ弱(本文)なのだからコンパクトさに驚きます。この本を完全に理解し、使いこなし、リファレンスマニュアルで基本的なクラスを学べば、あっさりと中級者レベルに到達できるでしょう。俺がRubyを始めた時代はリファレンスマニュアルすら整備されておらず、どこにも「Rubyの考え方」を記した文書がなかったので、この本を手に取れる今の人がうらやましいです。
なんといっても、「初心者」の定義を明確にしているのがすばらしいです。初心者には「プログラミング初心者」と「他言語の経験のあるRuby初心者」の2種類いますが、この本は後者をターゲットにしています。だから、プログラミング初心者は他書と併用しないときついです。それでも、プログラミングに強い興味を持っているやる気のあるプログラミング初心者ならば、先入観がない分逆にすんなり理解できるかもしれません。わからない用語はgoogle大先生に聞けますし。
初心者本とはいえ、説明をわかりやすくするための嘘は書かれていません。俺が本文を読んでて「おいおい、ここは端折りすぎだろ」と思ったら、そこには適切な脚注で厳密性を確保しています。ベテランの突っ込み封じです。その脚注も長々としていません。
「初めてのRuby」というタイトルではありますが、中級者も復習のために読んでみることをおすすめします。なんとなく使うのと、考え方を明確にするのとでは雲泥の差です。初めてならぬ「やり直しのRuby」としても十分通用します。
ドラクエをたとえに出してみましょう。
この本を読んだレベル1の魔法使い(Ruby使い)はメラの他にいきなり「メラミ」も覚えます。まだレベル1なので当然ベギラマはおろか、ギラ、ヒャド、イオすら覚えていません。しかし、前半の敵ならばたとえそれなりに強くてもメラミを唱えてしまえば即死です。*1他の魔法使いよりもずっと早い段階で強敵と戦え、あっというまにレベルアップするのは言うまでもありません。
レベル1の魔法使いはもちろん、ベギラマを覚えているがメラミを覚えていないレベル15の魔法使いにも、この本は買いです。*2もちろん、僧侶(他言語使い)から転職した人がメインターゲットですが。
「初めてのRuby」を初心者本だと思ってナメてかかると痛い目見るぜ、とりあえず買っとけ!