連載:〜ScottGu氏のブログより〜jQueryとMicrosoftScott Guthrie 著/Chica 訳2008/10/03 |
|
|
jQueryは軽量なオープンソースのJavaScriptライブラリ(サイズ的にはたったの15KBytes)で、比較的短い期間で非常に人気の出たWeb上のライブラリの1つです。
jQueryの大きな魅力は、手際よく(そして効率的に)できる限り少ないコードでHTML要素を検索し操作できるところです。jQueryでは開発者は便利な“セレクタ”APIを通じてHTML要素を検索することができ、“コマンド”をそれらに適用することができます。jQueryコマンドの特性の1つは、お互いを“連鎖”させることが可能であるため、一方のコマンドの結果をもう一方へ送ることができることです。jQueryにはコマンドとして使用できるビルトインのアニメーション用APIも一式含まれています。その組み合わせにより、ほんの少しのキー入力で非常にクールなことができるのです。
例えば以下のJavaScriptは、jQueryを使用して“product”というCSSクラスのあるページ内で<div>要素を検索し、アニメーションさせながらそれらを消していきます。
図1 |
また別の例として、以下のJavaScriptでは、jQueryを使用してページ上の“datagrid1”というIDの特定の<table>を検索し、そのDataGrid内の<tr>行を1つおきに取得し、それらの<tr>要素に“even”というCSSクラスを設定します。これは、1行おきの背景色の変更などに使用することができます(図2)。
図2 |
[注意:これらの2つサンプルは、jQuery in Actionという優れた書籍のコード例から引用したものです。]
上記のような選択やアニメーション操作の機能は、多くの開発者がASP.NET AJAXに追加してほしいと望んでいたもので、またそのサポートは、数カ月前に公開したASP.NET AJAX ロードマップに挙げられていた機能の1つでした。しかしチームがその構築の際に調査を開始してすぐ、jQueryがすでにこういったシナリオを非常にうまくサポートしており、そしてその周りにはすでに非常に大きなエコシステムとコミュニティが構築されていることに気付きました。jQueryライブラリはまた、ASP.NET AJAXやASP.NET AJAX Control Toolkitを使ったページ上でもうまく動作します。
機能を重複させるよりは、jQueryをそのまま使って、それをVS(Visual Studio)/ASP.NETに標準サポートのライブラリとして追加し、それを利用する新しい機能の構築に全力を尽くした方がよいのではないかと考えました。私たちはjQueryのチームに、この件に興味があるかどうか確認するためメールを送ると、彼らは面白いアイデアだと思うという返事をすぐにくれました。
jQueryのサポート
本日、MicrosoftがjQueryをVisual Studioと一緒に出荷することになったのをご報告できて、非常にうれしく思っています。jQuery JavaScriptライブラリはそのまま提供し、メインのjQueryブランチからソースを分けたり、変更したりしないつもりです。ファイルは既存のjQuery MITライセンスの下で継続して使用および出荷されます。
また、IntelliSense(インテリセンス)による注釈付きバージョンも提供する予定で、デザイン時には、便利なVisual StudioのIntelliSenseや統合されたヘルプ機能が使えます。例えば次のようになります(図3)。
図3 |
そして、連鎖コマンド(chained command)の部分では、次のようになります(図4)。
図4 |
jQueryのIntelliSenseサポートは、数週間でWebから無料ダウンロードが可能になります(VS 2008 SP1およびVisual Web Developer 2008 Express SP1の両方で動作します)。新しいASP.NET MVCのダウンロードでも提供し、デフォルトですべての新規プロジェクトにjQueryライブラリを追加する予定です。
また今年の終わりごろから、Microsoft製品のサポートをjQueryまで拡張する予定ですので、開発者や企業の方々は、毎日24時間、MicrosoftのPSSにてjQueryについての問い合わせやサポート・ケースのオープンが可能になります。
今後、ASP.NET AJAX Control Toolkitでより高いレベルのコントロールを実装するため、またASP.NET MVCに対して新しいAJAXサーバサイドのヘルパー・メソッドを実装するために使用するライブラリの1つとして、jQueryを使用していきます。ASP.NET AJAXに追加される新機能(例えば、新しいクライアント・テンプレート・サポート)もまた、jQueryとうまく統合できるように設計されています。
テスト、バグ修正、パッチなど、jQueryのオープンソース・プロジェクトへの貢献も企画しています。これらはすべて、標準のjQueryのパッチ・レビュー・プロセスを通じて行われます。
まとめ
今回の件でjQueryチームとパートナーになれたことを非常にうれしく思っています。jQueryは素晴らしいライブラリで、ASP.NET やASP.NET AJAXの開発者に非常に利益のあるものだと考えています。これがVisual StudioおよびASP.NETとうまく動作するようになり、そしてより多くの開発者の方へそれを届けられる日を楽しみにしています。
このアナウンスについての詳細は、jQueryチームのブログにあるJohn Resig氏の投稿をご覧ください。また、Scott Hanselman氏も分かりやすいチュートリアルをブログに書いており、そこにはASP.NET AJAXとjQueryの統合や、ADO.NETデータサービス(以前のコード名は“Astoria”といい、.NET 3.5 SP1で出荷されています)について書かれています。
Hope this helps,
「〜ScottGu氏のブログより〜」 |
- 第2回 簡潔なコーディングのために (2017/7/26)
ラムダ式で記述できるメンバの増加、throw式、out変数、タプルなど、C# 7には以前よりもコードを簡潔に記述できるような機能が導入されている - 第1回 Visual Studio Codeデバッグの基礎知識 (2017/7/21)
Node.jsプログラムをデバッグしながら、Visual Studio Codeに統合されているデバッグ機能の基本の「キ」をマスターしよう - 第1回 明瞭なコーディングのために (2017/7/19)
C# 7で追加された新機能の中から、「数値リテラル構文の改善」と「ローカル関数」を紹介する。これらは分かりやすいコードを記述するのに使える - Presentation Translator (2017/7/18)
Presentation TranslatorはPowerPoint用のアドイン。プレゼンテーション時の字幕の付加や、多言語での質疑応答、スライドの翻訳を行える
|
|