Railsチュートリアル(第2版)をほぼやり終えた感想など
技術・テクノロジー先週の金曜日頃、Rails チュートリアルの第 2 版をほぼやり終えた(11 章の演習やってない)ので、やってみて感じたことなどをまとめておきます。
対象読者について
このチュートリアルですが、チュートリアルという名前の割には読者を選ぶと思うので、どういった人が読むべきか(もしくは、挫折しないのか)について触れておこうと思います。
読むべき人
このチュートリアルを読むべき人はこういった人です。
- Rails を使ったアプリケーション開発のノウハウを知りたい
- Rails のアプリを 1 つくらい作ったことがあるが、あまり自信がない
- テスト駆動開発について知りたい
Rails を勉強したい人であれば、まず読むべき内容になっていると言えるでしょう。また、このチュートリアルでは一貫してテスト駆動開発をしているので、テストに興味がある人にもおすすめです。
挫折しない最低限のレベル
Rails チュートリアルは、チュートリアルという名前のわりに量が多く、また学ぶ技術範囲の多さからも読者を選ぶような気がします。
Rails チュートリアル中では
- Ruby
- Rails
- HTML
- CSS
- Git
- Heroku
などの言語・技術について学びます。そのため、中には途中で挫折してしまう人もいるのではないでしょうか。
自分が思う最低限の Rails チュートリアルを学ぶための技術レベルは、開発環境を整えられるぐらいだと思います。
ぶっちゃけ、環境さえ整ってしまえば、このチュートリアルはコピペでも最後までいけるようになっています(各章末にある演習を除く。ただし、演習は必ずしもやる必要はないです)。
開発環境を整えられる人であれば、おそらくコマンドラインもそれなりに使えるはずですし、わからないことがあったときに検索で調べる能力もあるかと思います。
それでも不安だ...という方は、「小学生でもわかる Ruby on Rails 入門 | OpenBook」を事前にやっておきましょう。Rails のなんとなくの雰囲気がつかめると思います(もちろん、開発環境が整っているという前提がありますが)。
感じたことなど
つぎに、チュートリアルをやって感じたことに触れてみます。
短期間でやるべき
自分は、Rails チュートリアルの第 2 版をやっている最中に第 3 版が出るほど、ゆっくり(というか、やるのを放置していた)進めてしまいました。
まぁ、多少は遅くてもいいと思うのですが、ある程度期間を決めて短期集中でやったほうがいいと思います。
理由は、期間をあけすぎると内容を忘れるからというのと、モチベーションの問題です。
やはり長いので、だらだらやるとやる気がなくなってしまうと思います。自分はそれで時間がかかってしまいました。
少しのミスが命取りになる
自分は掲載されているコードをコピペしないように進めていたので、当然ミスもありました。どこか間違っているとテストが通らないので、すごく焦ります。
そこで、エラーメッセージを見て間違えている場所を予測したり、チュートリアル中にあるコードを自分が書いたコードと見比べたりするのですが、案外これがためになったかな、と思います。
当然、実際のアプリケーション開発はコピペだけで終わるものではなく、自分でコードを書くことになります。
Rails チュートリアル中にタイポをするなら、それは実際の開発でもありうるということです。些細なミスで多大な時間を浪費するのはもったいないので、今後の開発でもちょっとしたミスはしないように注意しよう、と思えるようになりました。
Ruby のおもしろさ
このチュートリアルは Rails の開発手法を学ぶものですが、その中で途中(第 4 章)Ruby についての解説があります。
自分は、ここが結構重要かな〜と感じています。当然 Rails は Ruby で記述するのですが、その分 Ruby の基礎ができているかどうかで、開発のレベルが変わってくるように思います。
あまり Ruby の勉強をしなくても、Rails でアプリケーション開発はできるかもしれません。しかし、Rails チュートリアル中の Ruby の解説のみで満足せずに、もっと Ruby について学ぶべきだな、と感じました。
Rails チュートリアル後は何をするか
こうして Rails チュートリアルを終えたわけでが、その後は何をすべきでしょうか。自分なりに考えてみたことを、少し整理しておきます。
なにか作る
もっとも学習効率が高そうなのは「Rails チュートリアルを参考にして、なにか作る」ことだと思います。
テスト駆動開発をするのはなかなかハードルが高いかもしれませんが、普通にアプリケーションを作ることはできるのではないでしょうか。
自分で一から開発するのはいろいろと大変だと思いますが、やっぱりいい経験になると思います。
もう一回やる
Rails チュートリアルはよくできているため、何周かやったほうが良いという人もいます。ただ、1 周やった直後にやるのはなかなかつらいと思います。ある程度時間をあけてからであれば、また新しい発見があるかもしれません。
自分は第 2 版をやったので、今後第 3 版にも取り組む予定です。
その他の技術について学ぶ
アプリケーション開発は、Rails という技術だけで完結するものではありません。実際、チュートリアル中でも Rails 以外の技術に触れたと思います。
例えば、チュートリアルをやる中でデータベースに興味を持った場合は SQL について学んだり、フロントを改善したいと思ったのであれば JavaScript について学んだりするといいと思います。
自分は、テストについてもう少し学びたいと思ったので、今は「Everyday Rails… Aaron Sumner 著 et al. [Leanpub PDF/iPad/Kindle]」をやろうかなと考えています。
さいごに
何回も言うように、Rails チュートリアルをやり終えるには時間がかかります。 ただ、その分やり終えた後の達成感はそれなりにあると思うので、気になる方は挑戦してみてはいかがでしょうか?