Rails は MVCのフレームワークで、
- Model : ビジネスロジックを書く場所
- View : データを、ユーザーにどんな形で見せるかを記述
- Controller : ユーザーの操作に対して、Modelをコントロールする
ちなみに、そもそもMVCフレームワークの元の概念は....とかのMVC論争には、そこまで触れる気はありません。。
Railsでアプリケーションを作成する際には、この MVC に沿って開発をするのですが、その際に注意することや、自分が開発する上での方針を書いておく。(何がよくて何が悪いというより、ただのメモとして見てくれたら嬉しいです)
- Controllerはできるだけ薄くする
- ビジネスロジックなどはModelに記述する
- ( Helperで、Modelをあつかっても良い。それで逆に複雑化するならやめておく )
- 複数のModelにまたがるような処理だとかは、Service層を作るのもありかも (app/services や、app/models/services の作成) ちなみにGrailsでは、service層がフレームワークとして組み込まれてるらしいです。ただ、あくまでもビジネスロジックとなる部分はModelに記述すること。Serviceは「手続き」の部分を担当
- 当たり前だけど、UnitTest はちゃんとしようww
こんなとこです。なんかもっとこうした方がいいよ!みたいな意見があれば欲しいです。