【感想】『Ruby on Rails 5 アプリケーションプログラミング』読了

Ruby on Rails 5アプリケーションプログラミング

Ruby on Rails 5アプリケーションプログラミング

序文

今週も高田馬場Railsもくもく会に参加してきました。

techdrive.connpass.com

今週もほとんどもくもくしてましたが、ひとつだけ質問しました。進歩したぞ。

ちょうど1ヶ月かけて山田祥寛氏の「Ruby on Rails 5 アプリケーションプログラミング」を学習しましたので感想を記載しておきます。

取り組んだ動機

昨年から今年にかけて、Railsでユーザー入力などがないWebアプリを作ってみたのですが↓(宣伝)

jockey.kankeli.net

体系的な知識がまったくついていなかったので、知識の確認を兼ねて本書に取り組みました。

学習方法

「基本編」の1章~6章までと、「応用編」8章の「テスト」について学習しました。
ちなみに巷で評判が良いRailsチュートリアルはやってません。

とりあえず結論

  • Railsの基本的な機能が網羅的かつ簡潔にまとまっていて良い
  • ただし、ある程度の前知識が要求されるので最初の1冊としては不向き
    おすすめ度:★★★★★ 難易度:★★★☆☆

Railsの基本的な機能が網羅的かつ簡潔にまとまっていて良い

環境構築、「Hello, world!」的なアプリの作成(1~2章)から始まり、Scaffolding機能で生成されるコードを読み解いてRailsの概要把握(3章)、それからビュー、モデル、コントローラーの機能解説へ進むというRails学習の王道的な構成になっています。

一応全編に渡って、ひとつのアプリ(ログイン機能のある書籍情報管理アプリ)を作っていくという流れにはなっていますが、たとえば掲示板を実装するといった具体的な内容には踏み込んでいないので、とりあえず動くものを作りたいといった即効的な知識の習得には向いていないと思います。

本領はやはり4~6章のビュー、モデル、コントローラー関連の機能の解説の部分でしょうか。
さまざまな機能やメソッドについて詳細かつ簡潔に解説されており、リファレンス的な利用価値は相当高いと思います。

また、細かいメソッドなどはインターネットだけではなかなか存在自体に気づくことが難しいので、網羅的に説明してくれるのはとてもありがたかったです。

学習だけでなく、今後実際にRailsアプリを制作するにあたっても大いに役立つ良書だと思います。

最初の1冊としては不向き

ただしRailsおよびRubyについては最低限の知識を持っていないと、なかなか理解して読み進めていくことは難しいかもしれません。

具体的には参考書のソースコードをそのまま写すだけでは正しく動作しない箇所が多くあり、Railsに適切なルーティングやフィルターの設定、あるいはコメントアウトなどを自力で設定する能力が必要とされます。
とはいえ大半はRailsのエラーコードを読めば対処できるものですので、Railsに関しては最低限の知識さえあれば読み進めていくことはそれほど難しくないと思います。

参考までに私は以下の書籍をRails学習の1冊目として使用しました。
幅広いジャンルで初心者向けの書籍を多く書かれている掌田津耶乃氏の書籍なので、細かい点についてはいろいろ指摘される点もあるようですが、Railsの概観を掴むには悪くない書籍だと思います。

Ruby on Rails 5 超入門

Ruby on Rails 5 超入門

むしろ障害になるのはRubyの独特な記法のほうかもしれません。

私は長年C#の記法に馴染んできたので、ブロックやシンボルといった概念やreturnすら省略してしまう独特の記法にはかなり面食らいました。
Rubyの文法を知らなくてもRailsの機能やRubyの「寛容さ」でなんとなく動いちゃうんですよね…)
しかも記号を多用するのでインターネットで調べることも難しく、さらに同じ機能を実現するにも複数のメソッドや記法が許容されていたりするので、人によってコードの雰囲気が全然違っていたりして、かなり混乱しました。
今後初心者用の言語としてRubyをすすめている人を見かけたら呪おうと思います。

なんとなくでRailsを触ってきた人は手元に1冊信頼できるRubyのリファレンスを持っておくことをおすすめします。
私は以下の書籍を併用してRailsの学習を進めました。
若干かゆいところに手が届かない感覚はありますが、とりあえずのリファレンスとして使用するには十分だと思います。

カロリーメイトください。

BGM

揺れ / KICK THE CAN CREW

www.youtube.com