現在の状況を確認してみると、コードはコントローラに集中しています。
現状での実装を見てみると、エラー処理のbegin rescueを追加したこともあり、コントローラのコード量がとても増えてしまいました。
実はこれはあまり良くありません。コントローラに多くのコードを書きすぎるのは良くないとされているのです。コントローラのコードは簡潔に、長いコード、要するに本当のプログラム部分(ロジック部分とい言います)はモデルに書くと良いとされています。
これはRailsが採用しているMVC(Model・View・Controller)というデザインパターンが「そういう風に書くとプログラミングが上手くいくよ」というスタイルになっているからなのです。このあたりを次から見ていきましょう。
デザインパターンとは初めて聞く人も多いと思います。これはプログラミングの設計方法のようなものです。「こうやったら上手くプログラミングできるよ」というパターンがいくつか存在しているのですね。プログラマーの先人たちが「こんな時はこのパターン」みたいにいろいろと考えてくれたのですね。MVCというのはその中のひとつになります。
このMVCというデザインパターンでは、コントローラにはコードは少なめが良い、モデルに多くコードを書くべきだとされています。モデルにコードを書くようにするとコードが再利用できる為、不要なコードを排除する事が出来ます。
これにより複雑になってしまうことなく、コードを管理しやすくなります。では、実際の書き方などについて学んでいきましょう。
コントローラはその名の通り、操作するためのものです。基本的にプログラムの本体(ロジック部分)を書くべきではありません。それらはモデルに記述するようにしましょう。それをスキニーコントローラ、ファットモデル(Skinny Controller, Fat Model)と言います。
ここではモデルにコードを書く方法を学びます。これはMVCの正しい書き方とも言えます。そしてこう書くことで「きれいなコードを書く」ということにつながります。
Railsアプリ開発というかプロジェクトでは複数人で作業することになることになります。その時に誰が見てもわかりやすいコードにするべきですし、メンテナンスなども容易にするべきですね。その場合にこのコーディングスタイルはとても役立ちます。詳細は省きますが、ルールを守るととても開発がスムーズになるのですね。
このMVCコーディングスタイルを覚えて、みんなが見やすくわかりやすいコーディングを目指しましょう。そのためにここでは基礎的なRubyおよびRailsのコーディングを学び、きれいなコードが書けるようにします。
無料ビデオ講座のお知らせ
Skillhub [スキルハブ]では無料の動画講座を多数公開しています。他校だと数万円するような講座が無料で受講できます。