Getting Start with Rails [2]
2610 ワード
2.1 MVCアーキテクチャ
Railsはモデル、ビュー、コントローラ(すなわちMVC)のアーキテクチャに従って組織される.MVCの利点は商業ロジックとユーザインタフェースの分離 コードを保持しやすいDRYスタイル 異なる機能のコードが分離され、より明確になり、 のメンテナンスが容易になります.
2.1.1モデル
モデルは、アプリケーションシステムのデータを示し、これらのデータのルールを操作します.モデルは、主に関連するデータベース・テーブルを管理および関連付けて使用されるインタラクティブ・ルールとも言える.多くの場合、データベース内のテーブルはアプリケーション内のモデルに関連付けられます.応用中のビジネスロジックの大部分はモデルに集中している.
2.1.2ビュー
ビューは、アプリケーションシステムのユーザーインタフェースを示します.Railsでは、ビューは通常、ページ関連のデータ表示タスクを実行するRubyコードが埋め込まれたHTMLファイルです.ビューは、ブラウザまたは他のリクエストを発行するアプリケーションシステムにデータを送信します.
2.1.3コントローラ
コントローラはモデルとビューを結合し、Railsではコントローラがウェブブラウザからの要求に応答してモデルにデータを求め、そのデータを試行に渡す.
2.2 Railsの部品
Railsは、Webアプリケーションを構築するための完全なコンポーネントを提供します. Action Controller Action View Active Record Action Mailer Active Resource Railties Active Support 2.1.1 Action Conroller
ActionControllerはRailsアプリケーションでコントローラを管理するコンポーネントです.ActionControllerはRailsの入力要求を処理し,パラメータを抽出して対応する処理機能(Action)に配布する.ActionControllerが提供するサービスには、セッション管理、テンプレートレンダリング、リダイレクト管理が含まれます.
2.2.2 Action View
ActionViewはRailsのビューを管理し、デフォルトではHTMLとXMLの2つのフォーマットの出力を提供します.Actionviewは、ネストされたテンプレートとサブテンプレートを含むテンプレートレンダリングを管理し、AJAXサポートも内蔵しています.
2.2.3 Active Record
Active RecordはRailsのモデルベースです.Active Recordはデータベースに関係なく設計され、CRUD機能に基づいて、先進的な検索能力、モデル関連の記述能力を備えている.
2.2.4 Action Mailer
Actionmailerはe-mailサービスを提供するコンポーネントで、ActionMailersを使用してメールを送信することができます.これらのメールは柔軟なテンプレートを使用したり、外来のメールを受信したり処理したりすることができます.
2.2.5 Active Resource
Active Resourcesは、ビジネス・オブジェクトとRESTスタイルのWebサービスの架け橋です.RESTスタイルのWebリソースとローカルオブジェクトCRUDのマッピングを実現します.
2.2.6 Railties
RailtiesはRailsのコアコードであり、新しいRailsアプリケーションを生成し、異なるコンポーネントをRailsアプリケーションにしっかりと接着するために使用される.
2.2.7 Active Support
Active Supportは、多くのアプリケーションクラス拡張と標準Rubyライブラリの拡張を提供します.これらのコードはRailsカーネルとあなたのアプリケーションソフトウェアを含むRailsに使用されます.
2.3 REST
Roy Fieldingの博士号論文「アーキテクチャスタイルとネットワークベースのソフトウェアアーキテクチャ設計」は、通常、RESTアーキテクチャの礎とされている.幸いなことに、論文全体を読んでREST(記述的状態遷移)がどのように動作するかを理解する必要はありません.その主な原理は以下のようにまとめることができます.リソースの識別子を使用してリソース(URLと簡単に考えられます) を識別します.システムコンポーネント間でリソースを転送するステータス記述. 例えば、このようなRailsリクエストに対して
ID 17のピクチャリソースに対して削除要求が実行されると理解される.RESTは自然なスタイルのWebアプリケーションアーキテクチャであり、Railsはこのスタイルを広く発揚し、約束を通じていくつかのRESTの複雑さとブラウザの変な癖を防ぐ.
RESTのアーキテクチャスタイルの詳細を知りたい場合は、次のリソースがFieldingの論文よりも分かりやすいです. A Brief Introduction to REST by Stefan Tilkov An Introduction to REST (video tutorial) by Joe Gregorio Representational State Transfer article in Wikipedia
Railsはモデル、ビュー、コントローラ(すなわちMVC)のアーキテクチャに従って組織される.MVCの利点は
2.1.1モデル
モデルは、アプリケーションシステムのデータを示し、これらのデータのルールを操作します.モデルは、主に関連するデータベース・テーブルを管理および関連付けて使用されるインタラクティブ・ルールとも言える.多くの場合、データベース内のテーブルはアプリケーション内のモデルに関連付けられます.応用中のビジネスロジックの大部分はモデルに集中している.
2.1.2ビュー
ビューは、アプリケーションシステムのユーザーインタフェースを示します.Railsでは、ビューは通常、ページ関連のデータ表示タスクを実行するRubyコードが埋め込まれたHTMLファイルです.ビューは、ブラウザまたは他のリクエストを発行するアプリケーションシステムにデータを送信します.
2.1.3コントローラ
コントローラはモデルとビューを結合し、Railsではコントローラがウェブブラウザからの要求に応答してモデルにデータを求め、そのデータを試行に渡す.
2.2 Railsの部品
Railsは、Webアプリケーションを構築するための完全なコンポーネントを提供します.
ActionControllerはRailsアプリケーションでコントローラを管理するコンポーネントです.ActionControllerはRailsの入力要求を処理し,パラメータを抽出して対応する処理機能(Action)に配布する.ActionControllerが提供するサービスには、セッション管理、テンプレートレンダリング、リダイレクト管理が含まれます.
2.2.2 Action View
ActionViewはRailsのビューを管理し、デフォルトではHTMLとXMLの2つのフォーマットの出力を提供します.Actionviewは、ネストされたテンプレートとサブテンプレートを含むテンプレートレンダリングを管理し、AJAXサポートも内蔵しています.
2.2.3 Active Record
Active RecordはRailsのモデルベースです.Active Recordはデータベースに関係なく設計され、CRUD機能に基づいて、先進的な検索能力、モデル関連の記述能力を備えている.
2.2.4 Action Mailer
Actionmailerはe-mailサービスを提供するコンポーネントで、ActionMailersを使用してメールを送信することができます.これらのメールは柔軟なテンプレートを使用したり、外来のメールを受信したり処理したりすることができます.
2.2.5 Active Resource
Active Resourcesは、ビジネス・オブジェクトとRESTスタイルのWebサービスの架け橋です.RESTスタイルのWebリソースとローカルオブジェクトCRUDのマッピングを実現します.
2.2.6 Railties
RailtiesはRailsのコアコードであり、新しいRailsアプリケーションを生成し、異なるコンポーネントをRailsアプリケーションにしっかりと接着するために使用される.
2.2.7 Active Support
Active Supportは、多くのアプリケーションクラス拡張と標準Rubyライブラリの拡張を提供します.これらのコードはRailsカーネルとあなたのアプリケーションソフトウェアを含むRailsに使用されます.
2.3 REST
Roy Fieldingの博士号論文「アーキテクチャスタイルとネットワークベースのソフトウェアアーキテクチャ設計」は、通常、RESTアーキテクチャの礎とされている.幸いなことに、論文全体を読んでREST(記述的状態遷移)がどのように動作するかを理解する必要はありません.その主な原理は以下のようにまとめることができます.
DELETE /photos/17
ID 17のピクチャリソースに対して削除要求が実行されると理解される.RESTは自然なスタイルのWebアプリケーションアーキテクチャであり、Railsはこのスタイルを広く発揚し、約束を通じていくつかのRESTの複雑さとブラウザの変な癖を防ぐ.
RESTのアーキテクチャスタイルの詳細を知りたい場合は、次のリソースがFieldingの論文よりも分かりやすいです.