ASP.NET "Atlas" 概要
イントロダクション
新しい ASP.NET Web 開発技術(開発コード名"Atlas")は、クライアント スクリプト ライブラリと ASP.NET 2.0 のサーバー ベース開発プラットフォームを統合します。"Atlas" は、クライアント スクリプトから Web ベースアプリケーションの呼び出しが可能なアプリケーションを構築するため、AJAX 戦略を元に構築されています。"Atlas" はまた、ページを更新するためのサーバーへのラウンド トリップを要求することなく、アプリケーション処理のほとんどをクライアント側で実行します。
この開発戦略によって、典型的な Web アプリケーション上に数々のアドバンテージをもつ、最新の Web アプリケーションの構築を可能にします。AJAX スタイルのアプリケーションは、より高い性能、ブラウザ互換を提供し、より拡張性に優れた UI 機能をもつユーザーインターフェイスを提供します。
ASP.NET "Atlas" は、Web アプリケーションを構築するための新しい戦略に適応しており、クライアントとサーバー サイドの開発コンポーネントを加えることで、十分な改善が図られています。このトピックでは、"Atlas" 機能のゴールを記述し、"Atlas" アプリケーションのアーキテクチャ、たとえば、"Atlas" クライアント スクリプト ライブラリや "Atlas" サーバー コンポーネントを説明します。
"Atlas" ゴール
"Atlas" の主要なゴールは、以下の目的で、ブロックを構築している幅広いアプリケーションを提供することです。
"Atlas" アプリケーションを開発することを支援する
包括的な開発プラットフォームを提供するため、"Atlas" クライアント機能を、 サーバー上の ASP.NET の機能と統合する。
第一の "Atlas" の目的は、AJAX アプリケーションの開発を支援することです。 AJAX 開発は、かなり複雑です。"Atlas" は、次のような機能を提供することによって、この複雑性を管理します。
JavaScript で開発するための、一貫した、オブジェクト指向の API セットを提供する。
自動的なブラウザ互換性 : ブラウザごとに、コードを書いたり、または、コンポーネントを展開したりする必要がない。
クライアント スクリプト API とコンポーネント : リッチな UI 機能を提供し、AJAX スタイルのアプリケーションに通常要求されるようなコードの拡張を書くことを軽減できる。
宣言方スクリプティング モデル : ASP.NET コントロールのための宣言シンタックスを同様なクライアント開発のためのモデル。
"Atlas" の第二の目的は、クライアント スクリプティングを、ASP.NET サーバー サイド開発に統合することです。クライアントだけ、またはサーバーだけにすべての開発をフォーカスするよりむしろ、"Atlas" が両方のツールを提供することで、もっとも意味のある側でアプリケーション タスクをハンドルリングすることができます。ASP.NETは、"Atlas" アプルケーションのために以下のサーバー サイド機能を提供します。
Web サービス : プロファイル サービスなどの "Atlas" アプリケーションと統合するのに有効である。
Webサーバー コントロール : これらの ASP.NET サーバー コントロールは、"Atlas" の機能を使うクライアント スクリプトを生成する。これらのコントロールは、サーバー側の開発を知っている場合や "Atlas" クライアント スクリプトを手動で作成しない場合、とても有効である。
Visual Studio などの統合された開発ツール : デザイン-タイム開発環境を提供し、デバッキング、管理、その他の生産性を向上する機能。
"Atlas" アーキテクチャ
単純に表現すると、"Atlas" アプリケーションは、Web サーバー上のサービスやアプリケーションを呼び出すために "Atlas" クライアント スクリプト ライブラリを使う、Web アプリケーションから構成されています。しかし、開発の柔軟性と最高ツールを伴うアプリケーション開発のために、"Atlas" サーバーを使うことを望むかもしれません。"Atlas" の完全なアーキテクチャは、クライアント スクリプト ライブラリとサーバーのコンポーネントから構成されます。
"Atlas" クライアント コンポーネント
以下の図は、"Atlas" クライアント スクリプト ライブラリのアーキテクチャを描写しています。
The "Atlas" クライアント スクリプト ライブラリは、数多くの JavaScript (.js) ファイルから構成されており、オブジェクト指向開発の機能を提供します。開発者にとってこれらは、スクリプティング環境では今までになかったものであり、新しいレベルの一貫性とモジュール性をクライアント スクリプティングにもたらします。以下の層が、"Atlas" スクリプト ライブラリに含まれています。
ブラウザ互換性層 : これは、"Atlas" スクリプトのために複数のブラウザに対する互換性を提供する。
"Atlas" コア サービス : イベント ハンドリング、継承、データ型、オブジェクト シリアライゼーションなどの多くの JavaScript の拡張を含んでいる。
"Atlas" ベース クラス ライブラリ : ストリング ビルダー、デバッカ、タイマー、そしてトラッキングなどのコンポーネントを含む。
ネットワーク層 : Web ベースのサービスとアプリケーションをハンドリングし、非同期のリモート プロシジャ コールを管理する。
UI フレームワーク層 : ビヘイビア、"Atlas" 宣言型シンタックス、UI コンポーネント、およびデータバインディングなど数多くの "Atlas" クライント機能を提供する。
コントロール層 : クライアント開発のための "Atlas" 固有のコントロールを作成する。これらのコントロールは、データ バウンド、スクリプト化、drag and drop のような "Atlas" ビヘイビアへバウンドなど。 この層は、自動完了テキスト ボックス、通常フォーム コントール、データバウンド リストビュー コントロール、ナビゲーション コントールを含む。
"Atlas" サーバー コンポーネント
"Atlas" サーバー コンポーネントは、主に ASP.NET Web サービスと ASP.NET サーバー コントロールから主に構成されます。以下の図は、サーバー コンポーネントのアーキテクチャを描写します。
この図が示すように、すべての ASP.NET の機能が "Atlas" アプリケーションで利用可能です。
"Atlas" はまた、Web サービスやサーバー コントロールを含む ASP.NET 内容のコンポーネントを包含します。
"Atlas" は、次を含む、ASP.NET Web サービスの数多くの特長を利用できます。
プロファイル サービスは、サーバー側にユーザー情報を結び付ける
メンバーシップ サービスは、証明オプションを提供する。
ロール サービスは、ロール ベース認証を提供する。
パーソナライゼーション サービスは、サーバー側にユーザー固有またはページ固有の個人情報を結びつける。
グローバライゼーションとカルチャ固有サービスが利用できる。
ASP.NET はまた、 ASP.NET サーバー コントールに似せた "Atlas" サーバー コントロールを含みます。しかし、"Atlas" クライアント スクリプトを生成します。
ASP.NET "Atlas" サーバー コントロールは、"Atlas" クライアント スクリプトを生成するプロセスを簡素化しており、サーバー サイド開発に集中したい開発者に最適です。"Atlas" は、既存の ASP.NET サーバー コントロールと一致させたサーバー コントルールの完全なセットを含んでいます。それらは、ボタン、ラベル、オプション、テクストボックス、チェックボックス、ハイバーリンクなどのコントロールです。また、"Atlas" 固有のコントロールもあり、クライアント ビヘイビアを作成する JavaScript を生成します。それらは、HoverBehavior コントロール、ClickBehavior コントロール、 Popup コントロール、 そして AutocompleteBehavior コントロールを含みます。 これらのすべてのコントロールは、Visual Studio に統合される予定で、通常の ASP.NET サーバー コントロールと同様に使用することができます。