Turbogears-overview
TurboGears-概要
Web Frameworkとは何ですか?
Web Application Frameworkまたは単にWeb Frameworkは、ライブラリやモジュールのコレクションを表します。これにより、Webアプリケーション開発者は、プロトコル、スレッド管理などの低レベルの詳細を気にすることなく、アプリケーションを作成できます。
TurboGearsとは何ですか?
TurboGearsは、Pythonで書かれたWebアプリケーションフレームワークです。 2005年にKevin Dangoorによって作成された最新バージョンのTurboGears(ver 2.3.7)は、Mark RammとFlorent Aideが率いる開発者グループによって管理されています。
TurboGearsは、Models-View-Controllerパラダイムに従い、Rails、Django、Strutsなどの最新のWebフレームワークのほとんどと同じです。
モデルビューコントローラ
MVCは、Webアプリケーションを開発するためのソフトウェア設計パターンです。 Model View Controllerパターンは3つの部分で構成されています-
- モデル-パターンの最低レベルは、データの維持を担当します。
- 表示-データのすべてまたは一部をユーザーに表示します。
- Controller -モデルとビュー間の相互作用を制御するソフトウェアコード。
MVCは、アプリケーションロジックをユーザーインターフェイスレイヤーから分離し、懸念の分離をサポートするため、人気があります。 ここで、コントローラーはアプリケーションに対するすべてのリクエストを受信し、モデルと連携してビューに必要なデータを準備します。 ビューは、コントローラーによって準備されたデータを使用して、最終的な提示可能な応答を生成します。 MVCの抽象化は、次のようにグラフィカルに表すことができます-
モデル
モデルは、アプリケーションのデータの管理を担当します。 ビューからの要求に応答し、コントローラーからの指示にも応答して、それ自体を更新します。
景色
コントローラーがデータを表示する決定をトリガーとして、特定の形式でデータを表示します。 スクリプトベースのテンプレートシステムであり、AJAXテクノロジーとの統合が非常に簡単です。
コントローラー
コントローラーは、ユーザー入力に応答し、データモデルオブジェクトで相互作用を実行します。 コントローラーは入力を受け取り、入力を検証してから、データモデルの状態を変更するビジネスオペレーションを実行します。
TurboGearsは、多数のライブラリとツールの上に構築されています。 これらのツールは、TurboGearsの異なるバージョン間で変更されています。 現在のバージョン(ver 2.3.7)のコンポーネントは以下のとおりです。
SQLAlchemy
Pythonコードのオブジェクトリレーションマッピング(ORM)を提供するオープンソースのSQLキットです。
げんし
このテンプレートエンジンは、TGアプリケーションのフロントエンドを構築するために使用されます。 Webテンプレートシステムは、テンプレートを特定のデータソースと組み合わせて、動的なWebページをレンダリングします。
ToscaWidgets
サーバー側のコントロールを使用してHTMLフォームを生成するためのウィジェットライブラリです。 Toscaは、JavaScriptウィジェットおよびツールキットと接続するためのミドルウェアとしても機能します。
ギアボックス
プロジェクトとサーバーTurboGearsアプリケーションを管理するためのコマンドセットを提供します。 TurboGearsアプリケーションは、WSGI準拠のWebサーバーに展開できます。
Web Server Gateway Interface(WSGI)は、Python Webアプリケーション開発の標準として採用されています。 WSGIは、WebサーバーとWebアプリケーション間のユニバーサルインターフェイスの仕様です。 wsgirefパッケージは、WSGIの参照実装です。 Web TurboGears WebフレームワークにWSGIサポートを追加するために使用されます。 このパッケージのsimple_serverモジュールは、WSGIアプリケーションを提供する単純なHTTPサーバーを実装します。 このチュートリアルで開発したアプリケーションをテストするために使用します。