Ruby on Rails の規約

16
Ruby on Rails の規約 初心者でも素早くアジャイルに開発できる理由

Transcript of Ruby on Rails の規約

Ruby on Railsの規約

初心者でも素早くアジャイルに開発できる理由

設定よりも規約

アプリケーションが動作するのに必要な情報をプログラマ自身が設定するのではなく、       あらかじめフレームワーク側でルールとして用意しようという考え方

MVC

コントローラ

ビュー モデル

DB

状態

UI

調整

MVCのディレクトリ構造の規約

app/models app/controllers app/views/コントローラ名app/views/layouts/テンプレート名

コントローラ名の規約クラス名

PagesController 

ファイル名app/controllers/pages_controller.rb

全て小文字単語区切りは “_”

対応するモデルやリソースの複数形英大文字から始まる英数字のみ単語区切りは単語の先頭文字を大文字

モデル名とテーブル名の規約クラス名

Page 

ファイル名app/models/page.rb

英大文字から始まる英数字のみ単語区切りは単語の先頭文字を大文字

単数形の名詞句英大文字から始まる英数字のみ単語区切りは単語の先頭文字を大文字

モデル名とテーブル名の規約テーブル名

Pages 

モデルクラスEntryに対応するテーブルモデルクラス名の複数形

ビューのファイル名の規約テンプレートファイル名

app/views/page/index.html.erbapp/views/page/edit.html.erbapp/views/page/show.html.erbapp/views/page/new.html.erbapp/views/page/_form.html.erb

アクション名.フォーマット名.レンダリングエンジン名全て小文字

ビューのファイル名の規約テンプレートファイル名

app/views/page/index.html.erbapp/views/page/edit.html.erbapp/views/page/show.html.erbapp/views/page/new.html.erb

“_”で始まる

app/views/page/_form.html.erb

REST

全ての情報はリソース

REST

リソースは識別子“URI”を持つ

www.facebook.com/utgym www.facebook.com/utgym/info

www.facebook.com/utgym/eventswww.facebook.com/utgym/phots

REST

リソースの状態は時間や条件とともに変化するかも

REST

リソースの意味は不変

REST -

Pagesコントローラ

ビュー Pageモデル

Pagesテーブル

リソースを操作

GET・PUT

POST・DELETE

https://www.facebook.com/utgym

RESTful

ルーティング pages GET /pages(.:format) pages#index POST /pages(.:format) pages#create new_page GET /pages/new(.:format) pages#newedit_page GET /pages/:id/edit(.:format) pages#edit page GET /pages/:id(.:format) pages#show PUT /pages/:id(.:format) pages#update DELETE /pages/:id(.:format) pages#destroy

ルート HTTPメソッド ルートパス ルートの要件

提供UT Startup Gym

Railsによるアジャイル       Webアプリケーション開発第4版Rails3レシピブック190の技

これがやりたくて一番最初にこのページを作ったよ