読者です 読者をやめる 読者になる 読者になる

感謝のプログラミング 10000時間

たどり着いた結果(さき)は、感謝でした。

フレームワークって何?

Rails
<スポンサーリンク>

Ruby on Rails 4 アプリケーションプログラミング」という本を読んで、フレームワークの説明が面白かったので、自分の言葉を使ってまとめてみます。


フレームワークとは、問題を一般化し、定石をまとめた枠組みのことです。
そこには先人の知恵が詰め込まれています。

有名なのは経営学の3Cとか4Pとかですね。
フレームワークを使えば、ヌケ・モレなく考えることができますよーってやつです。

アプリケーションフレームワークというのも、広義ではフレームワークの一種です。

アプリケーションを開発する際の「こうあるべきだ」という設計面での思想を詰め込み、再利用可能なクラスという形で提供しているのが、アプリケーションフレームワーク。
混同されがちですが、ライブラリというのはプログラマーが呼び出すものですが、フレームワークはプログラマーが書いたコードをアプリケーションが呼び出します。

これを制御の反転(=Invention of Control)といいます。

Ruby on Railsの特徴

RailsではMVCパターンが採用されています。
Model-View-Controllerが規約によって厳密に定義されていて、それぞれの役割をまっとうします。
Controllerがリクエストを受付け、ビジネスロジックを呼び出して、出力ページに振り分けます。

Modelはビジネスロジックを担い、データの操作を行います。
ViewはHTMLやXMLなどの最終的な出力を行います。

その他に、Railsの初期バージョンから貫かれている原則として、
DRYとCoCがあります。

DRYはDon't Repeat Yourselfという意味で、同じ記述を繰り返さないという意味です。
CoCは設定よりも規約という意味で、Javaのstrutsなどで設定ファイルがあふれてそっちの管理・メンテナンスが非常に面倒になった経緯から言われるようになったそうです。