Ruby on Railsをはじめるには、「Ruby on Railsチュートリアル」をやる。
以上。
てな手抜きはしませんw
まあ、Ruby on Railsを時々やる立場としては、一番つらいのが「流れが早い」こと。
PHPが農業のため池とすればmRuby on Railsはラフティングをやる谷川の急流。
一昔前に学んだり使ったりしたことが、あっという間に廃れてしまう。
邪道かもしれないけど、こんな考え方で捉えると楽かも。
1.DBの設定情報は先に設定
2.呼び出されるコントローラーを全部作る(生成する)
3.各コントローラで使用するアクションを固める
4.DBのテーブル設計は初期のうちに固める
5.Scaffoldで生成できるものは作ってしまう
6.追加のモデルを作る
7.モデルのカスタマイズする
8.モデルの相関を張る
9.コントローラのアクションの詳細を実装する
10.viewの実装をする
11.テストをする
こんな感じです。
所詮、Webアプリケーションという点は共通なので、
Input:フォームからの入力?APIの呼び出し?他のアクションからの転送?
Output:DBへ保存?画面へ表示?JSONで出力?次のアクションへ転送?
という処理の入口と出口を把握し、
その入口と出口の間に、どんな処理が必要か?
処理:DBからのデータ取得、DBへのデータ登録、データ加工、処理判定、分岐など
そんな流れで実装するのですが、今まで一番辛かったのが、
ModelのActiveRecordの内部が複雑化していること。
DBからデータを様々な条件で抽出するだけでも、実装する方法が沢山あるので、
どれを選ぶが、どれが正解なんかは、ソースを納品する納品先が決めるの事なので
まあ、検収を完了するまでやり直しは覚悟をしましょう。
Rubyの性というか結構自由に実装出来てしまうので、王道の実装を示して欲しいというのが
実装する側の願いです。
機械的なテストだけでは、この辺りのやり直しは避けられないです。
あと、Ruby on Railsという名の通り、根本的な実装はRubyなので、Rubyの最低限というか
初心者以上の中級者程度のRubyの実装スキルも必要です。
最後に、Google先生に実装方法を聞いても、情報が古かったり、今だと廃れてしまったライブラリを
使用していたりする情報が検索結果のTOPに上がってくるので、情報が投稿された日時、対応するバージョン、
を気をつけましょう。あと、アクセス数稼ぎの転載クソブログも混ざっているので、騙されないように!
PHPと違い、検索結果で出てくる情報の有効性が低すぎるのは、なんとかなりませんかねぇ。。。。
まあ、Ruby on Railsに専従していればこんなことは無いと思いますが、
時々携わる人は苦労しますねw