|
||||||||||||||||
| 1 2 3 次のページ | ||||||||||||||||
| はじめに | ||||||||||||||||
|
ここ最近Ruby on Rails(以下、Rails)というWebアプリケーションのフレームワークが注目を浴びています。ではRailsが注目される理由とはなんでしょうか。本連載では「Railsとは何か」から解説し、Railsを実際に動かしながら基本を押さえ、注目される理由を明らかにしていきます。 |
||||||||||||||||
| Railsとは | ||||||||||||||||
|
RailsはDevid Heinemeier Hansson氏(以下、Hansson氏)が中心となって作成を続けているRuby製のオープンソースWebアプリケーションフレームワークです。まずはその概要について少し探ってみましょう。 |
||||||||||||||||
| 成り立ち | ||||||||||||||||
|
Railsは、2003年の夏にHansson氏が作成を開始して、2004年にはじめて一般に公開されました。 それまでは「すぐに作れるけどゴチャゴチャしがちなPHPと、きれいだけど作るのに時間がかかるJavaを使ってソフトウェア開発をしていた」とHansson氏は語っています。そこで両者のいいとこどりをした「早くてきれいな」フレームワークを目指して開発をはじめ、現実のものにした結果がRailsなのです。 |
||||||||||||||||
| After Railsフレームワーク | ||||||||||||||||
|
優れた特徴を持つRailsは、リリース後から現在にいたるまで爆発的に流行っています。ではどのくらい流行っているのでしょうか。そこでRailsにインスピレーションを受けて誕生した(とされる)代表的なフレームワークを表1にあげます。
表1:主要なAfter Railsフレームワーク一覧 表1を見るとわかるように様々なプログラミング言語でRailsライクなフレームワークが実装されています。この影響力の大きさを見てもRailsの注目度を確信することができるでしょう。 |
||||||||||||||||
| コンセプトは「規約は設定に勝る」 | ||||||||||||||||
|
Railsがここまで多くの支持を得た理由は1つではありません。従来のフレームワークにはなかったいくつもの革新的な特徴が、相乗効果を生みだしたからだといえます(表2)。
表2:Railsを特徴付けるキーワード その中でも1点特筆するとすれば、Convention over Configuration(CoC)でしょう。CoCは「規約は設定に勝る」と訳されます。 例えば、Railsでは「モデルクラスにはマッピングしたいテーブルの単数形を命名する」という規約があります。これに則って「CARS」テーブルとマッピングしたいクラスに「Car」という名称をつけるだけで自動的にO/Rマッピングされて簡単にデータベースアクセスできるようになります。 もちろんCarクラスをKURUMAテーブルに明示的にマッピングするように「設定」することもできますが、その必要があるケースは少ないため、ほとんどの場合は設定の記述を省略できるのです。 このように「80%のケースではRailsの規約解釈によって自動的にお膳立てしてもらい、残り20%のケースでだけ開発者が手動で明示的に上書き設定すればいい」という考え方がCoCです。規約に則っていればいるほど感動的なまでにソースコード量を削減できます。 言い換えると「すべてのものに柔軟性を与える必要はない」という割り切りに基づく考えです。従来のフレームワークになかったものは、この「割り切り」であるといえるかもしれません。 |
||||||||||||||||
|
1 2 3 次のページ |
||||||||||||||||
|
|
||||||||||||||||
|
|
||||||||||||||||
|
||||||||||||||||
|
|
||||||||||||||||
|
||||||||||||||||
|
|
||||||||||||||||
|
||||||||||||||||
|
|
||||||||||||||||
|
||||||||||||||||

