プロを目指す人のためのRuby入門

2017年中に読了する予定だったがゼノブレイド2やってたら諸々あって2週間遅れで読了した。

対象:

本著の冒頭でも語られている通りプログラミングの未経験者がこの本を読了するのはかなり根気がいることだろうと思う。 プログラミング初級者(初心者でない)が次のステップへ行こうとするときに読むべき本であると感じた。 一方で手元にあって困ることがない本だとも実感した。 他の言語である程度プログラムを書くことが出来る、あるいは最低限if文、for/while文、関数がわかる人が対象としてボリュームゾーンであるように思う。

感想:

結論からいってしまうと個人、というよりは業務でRubyを扱うことがあるなら1冊教育用途で置いていてよい書籍だ。

本著を手に取るきっかけとなったのが目次の例題が非常に適切なレベルで設定されているように感じたからだが結果振り返ってみるとそれは正しかったように思う。 4章の繰り返し制御や配列、ブロックなどの概念や使い方ハマりどころは以前Railsでアプリを作っていた際に「よくわかっていないがサンプルとして書かれている通りにかけば動く」というものを十分に解決してくれたし、5章のハッシュやシンボルを理解するも大いに不勉強な知識を補完してくれた。 ぼくの今までの主言語がPHPだったこともあり、なにがRubyとその他の言語で違うのか?が書かれているのは非常にわかりやすく、またハマりどころを事前に教えてもらえたと実感している。

クロージャーの振る舞いの違いやサンプルコードでなく実務でよく見かけるような書かれ方をしたコードの説明などがされており、まさしく入門として正しい1冊だと感じた。

カバーに「Railsをやる前に、Rubyを知ろう」という一語があるが自分が如何にRubyを知ることなく、極端な言い方をしてしまえば「舐めていた」かを直視することとなった。 まだまだyieldやProc、それにシンボル。 そしてなによりもクラスのPublic/Private/Protectedの概念はまだまだ自分のなかにしっかりと根づいていないと感じている。

そうそう、本著ではRubyらしいコードの書き方が乗っていることがある。 Rubyにはいくつもの書き方や実装の仕方があり、独学の初心者や初級者は相談する相手がいないことが多いため、どの実装を選択するのがベターかわからず戸惑うこともあると思う。 会社であれば先輩社員や詳しいひとにレビューをお願いすればいいが、独学ではなかなか難しい。 全体的な総量としては少ないが本著にはその点について言及されているところが何箇所かあり、そうすることの意図も非常に明確に書かれている。 今後迷ったときにどれを選べばいいのかの判断基準になりそうだと感じた。

もしあなたが他言語のプログラミング経験はあるが、Railsを覚えたいと思うのなら最初に手にとって読む1冊として最適だろう。 恐らく幾つかの内容についてRuby独特の解釈で戸惑うことや思考が追いつかないことがあると思うが、それがRubyという世界の流儀なのだろうと思う。 今後の目標としては以前挫折したRailsチュートリアルやPerfect Ruby on Railsなどを写経していわゆる「Rubyらしい」書き方を身に着けていこうと思っている。