第25回 Ajaxで加速!? エンタープライズ2.0とWebOSの普及
株式会社ピーデー
川俣 晶
2007/9/26
そのほかの見どころ
Ajaxとそれに関連する話題を紹介します。
■ いま、jQueryとYUIが熱い!!
- jQuery:The Write Less, Do More, JavaScript Library
- jQuery UI:Widgets, Components, and Interactions
- The Yahoo! User Interface Library(YUI)
まったく個人的な印象にすぎませんが、Ajaxのライブラリとしては特にjQueryに熱気があるように感じられます。もう1つ、熱気を感じるのはYUI(Yahoo! UI Library)です。
jQueryのトップページ |
一方、私も使っているASP.NETのAjax拡張形であるASP.NET AJAXからは、あまり熱気を感じません。本来なら、自分で書いたプログラムの拡張時に最初の候補となるASP.NET AJAXが気になるのが自然な流れという気がしますが、実際にはjQueryやYUIの方が気になります。その理由を考えてみると、どうやら JavaScriptに対するスタンスの差ではないか…… と思うようになってきました。
ASP.NET AJAXは、あくまでサーバ側技術であるASP.NETの存在が大前提となります。それを使わない使い方もありますが、ASP.NET AJAXの最も大きな目玉はJavaScriptを知らなくてもAjaxのメリットを活用できるWebアプリを開発できることにあります。
jQueryの新しいUI実装、jQuery UIのトップページ |
一方で、jQueryやYUIは、あくまでJavaScriptでより良いプログラムを記述するための技術です。私自身、JavaScriptが好きなので、どうしてもそれらの技術に目が行ってしまうのかもしれません。
Yahoo! UI Libraryのカレンダーサンプルのページ |
■ アドオンなしのWebブラウザを開く方法
Windows Vistaを悪くいう人は、おそらくVistaならではの改良された使い勝手に気付くこともなく、従来のWindowsのようにしか使っていないのでしょう。では、Vistaの何が改良されているのかといえば、それは無数にあります。
ここで特に紹介するのは、スタートメニュー内の“検索ボックス”です。これは、スタートメニューを開いた時点でフォーカスを持っているので、そのまま文字を入力できます。そして、文字を入力しながら検索が行われ、スタートメニューや指定パスのファイルのリストアップなどを行ってくれます。
例えば、Ctrlキーを押しながらEscキーを押し、「il」と2文字タイプした時点で、「Adobe Illsutrator CS3」がリストの先頭に表示されます(Adobe Illustrator CS3がインストールされていて、似たような名前のプログラムがほかになければ)。その時点で、Adobe Illustrator CS3が選択状態にあるので、そのままEnterキーを押せばすぐIllustratorが開きます。
この機能は、特にソフトを大量にインストールしてスタートメニューから目的のソフトを探すのに難儀するようなマシンで役立ちます。何しろ膨大なメニュー項目から探す必要がないのです。この機能に慣れると、もうVistaからXPには戻れません。
さて、なぜ一見関係ない話を長々と書いたのかというと、このような素晴らしい使い勝手に浸った結果、見落としたものがあったことに気付いたからです。Webブラウザでトラブルが起きたとき、問題がWebブラウザ本体にあるのかアドオンなどにあるのかを切り分けるために、アドオンなしの“素”のWebブラウザを使いたいと思うことがあります。それを行うのは割と面倒だと思っていました。
しかし、Vistaでは違いました。何と、スタートメニューのアクセサリの中のシステムツールの中に、“Internet Explorer (アドオンなし)”というアイコンが最初から登録されていたのです。普段からスタートメニューの中を見ないで、検索窓に頼りっ切りだったので、すっかり見落としていました!
アドオンなしで起動したInternet Explorer |
■ どの圧縮ツールを使うか? それが問題だ!
いまや、JavaScriptのコードを圧縮することは必須の要求といえるでしょう。難読化という目的もありますが、それ以上に、大きくなる傾向にあるコードをできるだけコンパクトにして素早く転送できるようにすることは、使い勝手の向上に貢献すると思います。
構文解析などに消費される時間も減る可能性があると思います。では、圧縮を行うとして、どのようなツールを使えばよいのか? いまはそれが問われる時代でしょう。上記のサービス(比較するツールはJSMin、Dojo shrinksafe、Packer、the YUI Compressor)がそれを判断するために役立つかもしれません。
CompressorRaterにてjQuery 1.1.4のソースコードをソースコードを比較した結果 |
■ 「何となく書ける」と「確実に動く」の差
これは割と基本的な常識の問題と、JavaScript固有の実装の問題が入り組んでいる話題という気もします。これを読んで、「おお、なるほど!」と思いました。ここで「なるほど!」と思ったのは、JavaScriptと向き合ういまどきのプログラマーの心理が見えたような気がしたからです。
個人的には、「JavaScriptは勢いとノリで書いて、意図どおりに動けばそれでいい言語だ」と思っています。厳密な正確さや、よりエレガントな書き方を知らなくても、意図どおりに動けばOKです。しかし、それは問題の半分でしかありません。残りの半分は、「意図どおりに動かなかったときはどうするのか?」です。
なぜ、意図どおりに動かないのか、原因を見つけ出し、それを的確に修復するにはそれなりの知識が必要とされます。それを得るために、基礎から体系立てて積み上げるような地道な勉強も必要とされるでしょう。複雑怪奇な言語仕様を読み解かねばならないこともあるでしょう。しかし、それが「何となく書ける」と「確実に動く」の差を生むのだと思います。
■@IT関連記事
いまさら聞けない、“Ajax”とは何なのか? いまさら聞けないリッチクライアント技術(3) Googleマップで有名になり、もはやWebの定番といっても過言ではないAjax。その生い立ちや仕組み、構成技術について解説 「リッチクライアント & 帳票」フ ォーラム 2007/8/23 |
Enterprise Web 2.0は本物か? WCR Watch(16) Web 2.0はエンタープライズにまで影響を与えつつある。Enterprise Web 2.0アーキテクチャとはなにか? 米ネクサウェブのCTOに聞いた 「リッチクライアント
& 帳票」フォーラム 2006/10/5 |
jQueryを使ってTwitterをおいしくマッシュアップ パターンとライブラリで作るAjaxおいしいレシピ(1) jQueryを使ってTwitterのコメントをかんたんに表示するサンプルを見ながら、AjaxデザインパターンやMVCについて解説 「リッチクライアント & 帳票」フ ォーラム 2007/8/29 |
ASP.NETのWebアプリをプログラミングなしでAjax化 特集:ASP.NET AJAXファーストルック 開発名Atlasがついに正式リリース。この無償のフレームワークを使えば簡単にASP.NETアプリをAjax化でき、リッチなUIが構築可能 「Insider.NET」フォーラム 2007/2/10
|
Webアプリに使えるAjaxライブラリ8選! Ajax解体新書(3) Webアプリ開発に必要なツールとなってきたAjaxライブラリ。150もあるというライブラリ群から、代表的な8つを比較して、Ajaxライブラリの全体像を把握しよう 「リッチクライアント & 帳票」フ ォーラム 2006/11/22 |
1-2 |
INDEX | ||
第25回 Ajaxで加速!? エンタープライズ2.0とWebOSの普及 | ||
Page1 Ajaxで日本企業の「2.0」化が加速?|Google、プレゼン機能を提供開始|“ajaxWindows”はWebOSを普及させるか? | ||
Page2<そのほかのみどころ> いま、jQueryとYUIが熱い!!|アドオンなしのWebブラウザを開く方法|どの圧縮ツールを使うか? それが問題だ!|「何となく書ける」と「確実に動く」の差 |
- GASで棒、円、折れ線など各種グラフを作成、変更、削除するための基本 (2017/7/12)
資料を作る際に、「グラフ」は必要不可欠な存在だ。今回は、「グラフの新規作成」「グラフの変更」「グラフの削除」について解説する - GET/POSTでフォームから送信された値をPHPで受け取る「定義済みの変数」【更新】 (2017/7/10)
HTMLのフォーム機能についておさらいし、get/postメソッドなどの内容を連想配列で格納するPHPの「定義済みの変数」の中身や、フォーム送信値の取り扱いにおける注意点について解説します【PHP 7.1含め2017年の情報に合うように更新】 - PHPのfor文&ループ脱出のbreak/スキップのcontinue【更新】 (2017/6/26)
素数判定のロジックからbreak文やcontinue文の利点と使い方を解説。for文を使ったループ処理の基本とwhile文との違い、無限ループなども併せて紹介します【PHP 7.1含め2017年の情報に合うように更新】 - Spreadsheetデータの選択、削除、挿入、コピー、移動、ソート (2017/6/12)
Spreadsheetデータの選択、挿入、削除、コピー、移動、ソートに使うメソッドの使い方などを解説する
|
|