Ruby on Rails
出典: フリー百科事典『ウィキペディア(Wikipedia)』
Ruby on Rails(ルビーオンレイルズ)はオープンソースのWebアプリケーションフレームワークである。RoRとか単にRailsと呼ばれる。その名にも示されてるようにRubyで書かれている。またModel View Controllerアーキテクチャに基づいて構築されている。
実アプリケーションの開発を他のフレームワークより少ないコードで簡単に開発できるよう考慮し設計されている。 Railsの公式なパッケージはRubyのライブラリやアプリケーションの流通ルートであるRubyGemsにより配布されている。
目次 |
[編集] 哲学
Railsの基本理念は「同じことを繰り返さない」(DRY:Don't Repeat Yourself)と「設定よりも規約」(CoC:Convention over Configuration)である。
「同じことを繰り返さない」というのは、定義などの作業は一回だけですませろとの意味である。Railsはフルスタックのフレームワークであり、コンポーネントの統合は手動での設定を必要とせず自動で行われる。例えばRuby on Railsに組み込みのORMライブラリであるActiveRecordではクラス定義において、データベースから読み取るべき属性名等を指定する必要はない。ActiveRecordはRDBMSの表定義から自動的にその情報を取得する。従ってプログラムとRDBMSの両方にそれを定義するというような無駄な作業を行う必要はない。
「設定よりも規約」とは、標準的な設定は決まったルールに従い、共通でない部分の設定のみを行うようにするべき、ということである。
[編集] 歴史
Ruby on RailsはデンマークのプログラマであるDavid Heinemeier Hanssonにより、プロジェクト管理ツール"basecamp"の開発に用いられた知見やコードを抽出し、一般化することにより作成された。最初のバージョンが2004年7月に公開され、バージョン1.0が2005年12月13日にリリースされた。
[編集] RoRのMVCアーキテクチャ
Rails上のMVCアーキテクチャは以下の通りである。
[編集] Model
データベース駆動のMVC WebアプリケーションではModelはRDBMSのテーブルを表すクラスを意味する。 RailsではActive Recordを通じてModelクラスを扱う。通常プログラマはActiveRecord::Baseクラスのサブクラスを作る必要がある。そうすることでRDBMSのどのテーブルを使うべきか、どういったカラムを持つべきかを自動的に決定してくれる。
[編集] View
MVCではViewは表示のためのロジックであり、コントローラクラスからのデータをどのように表示するかを規定している。 WebアプリケーションではHTML内に若干のコードを埋め込むことで実現される。
[編集] Controller
MVCではControllerはRailsのAction Packには含まれるアプリケーションコントローラクラスによって扱われる。 WebベースMVCアプリケーションではWebブラウザを操作するユーザによりコントローラのメソッドが起動される。
[編集] 書籍
- RailsによるアジャイルWebアプリケーション開発 ISBN 4274066401
- ライド・オン・Rails ISBN 4797335750
- はじめようRuby on Rails ISBN 4756147739
- かんたんRuby on RailsでWebアプリケーション開発 ISBN 4798111570
- Ruby on Rails入門―優しいRailsの育て方 ISBN 4798013951
[編集] 関連項目
[編集] 外部リンク
- Rails Wiki - 日本語情報源、勉強会案内
- api.rails2u.com 最新版ドキュメント検索