
第2回 Ajax、それはWeb2.0へと続く道
株式会社ピーデー
川俣 晶
2005/11/19
|
Web2.0時代の勝者となるべく、Ajaxという戦場が熱い。GoogleとYahoo!のみならず、マイクロソフトやオープンソース・ジャパンも参戦している。彼らがリリースしたWebアプリケーションをピックアップしてお届けする。 |
- - PR -
Web2.0への道 |
Ajax、それはWebアプリケーションのユーザビリティを改善する切り札である。古い技術を組み合わせ、魔術のごとく生まれ変わった新しいファッションである。それは仕方なく使う消極的な選択ではない。未来への可能性を切り開く前進しようという意思である。未来形のWebとして語られるWeb 2.0へ至る道はRSS、ATOMなどいくつかあるとされるが、Ajaxもまた、Web 2.0に続く道の1つといえるのだ。
この連載では、毎月Ajaxの動向をウオッチングしている。基本的には、新しい話題を中心に、厳選した面白い話題を提供していきたいと思うが、面白いもの、確実に押さえておきたいものを取り上げることもある。
なお、ここでは主に日本語で読める情報について取り上げていく。ただし、特に重要なものについては、英語の情報を扱う場合がある。
|
今回のピックアップトピックIndex |
ハイライト1・Googleの独走を許すな! Yahoo!地図情報の逆襲!! |
地図は面白いものです。地図は、見るというほかに、読むという行為も可能です。例えば、目的地までの経路を調べるのは単に地図を見ているだけ。しかし、そこから何か明確に書かれてはいない情報を発見していくのが地図を読むということになります。最近の個人的な体験を紹介すると。何げなくGoogle ローカルを見ていて発見したことがあります。中央線武蔵境駅と境浄水場の間が不思議な曲線で結ばれているのが見えませんか? これはマップモードで見ていると分かりにくいのですが、サテライトモードではくっきりと見えます。これを見て、私はピンと来ました。というのは、現在の新宿西口の高層ビル街にあった淀橋浄水場に中央線から分岐した線路が入っている古地図を見たことがあるからです。これと同様に、浄水場に入る鉄道の線路があって、その跡が見えているに違いないと思って調べてみると、どうやら当たりのようです(ちなみに、すぐ東に同じような曲線が見えますが、これは中央線三鷹から武蔵野競技場へ行く路線の跡のようです)。このように、地図はもともと面白いのですが、サテライト画像と切り替えて自由に見ることができると新たな発見もあります。
この面白さをGoogleに独占させまいと、Yahoo!が乗り出してきました。その名もYahoo!地図情報 - スクロール地図です。スクロール地図という名のとおり、マウスによるドラッグや矢印キーの操作でスクロールさせることができる地図です。航空写真に切り替えることもできます。後から対抗して出てきただけのことはあり、機能も豊富です。矢印キーを押した場合には慣性が付いた滑らかな移動を見せてくれるし、縮尺を切り替えると表示中の画像を拡大縮小してから正規の画像に切り替わります。また、広範囲を表示するサブマップも横に表示され、そこから素早く場所を移動させることもできます。そして、航空写真モードの表示は、Googleのサテライト画像よりも鮮明に見えるように思います。
このGoogle対Yahoo!の2強対決はとても興味深いものです。この対決は、従来までのインターネット上の対決とは意味合いが違うように思われます。Ajaxの技術を全面的に使って構築されたこれらのシステムは、機能性や使い勝手の面でのはっきりとした差別化を指向しています。それは、従来ならWebサイトというよりはアプリケーションソフトの問題でした。しかし、Ajaxはそのような問題を、Webサイトに持ち込むことを可能にするわけです。
ハイライト2・Windows Live |
Ajaxという戦場に乗り出そうとしているのは、GoogleとYahoo!だけではありません。マイクロソフトもまたこの戦場に乗り出そうとしています。以前からマイクロソフトは、start.comという実験サイトを公開していました。これは、ユーザーがカスタマイズ可能な自分専用ページを作成するものです。さまざまな機能や、複数のサイトのRSSによるフィードを自由に配列して並べたり、色の設定を簡単に切り替えたりすることができました。Googleのパーソナライズドフォーム等と似たサービスと考えればよいでしょう。しかし、この実験サイトの改良版が、Windows Liveとして実用システムとして提供されることが発表されました。このサービスは、着信した電子メール、ニュースのヘッドライン、購読しているブログのヘッドラインなどを自由に並べて自分だけの便利なページを作成することができます。
マイクロソフトがAjaxに向ける熱意はそれだけではありません。マイクロソフトはOffice Liveというサービスもアナウンスしています。これは、独自ドメイン名、Webサイトや電子メールアカウントを無料で提供するとともに、有償で顧客、プロジェクトやドキュメントを管理ツール、セキュアなプライベートWebサイトなども提供するとしています。当然、これもAjaxの技術が大々的に取り入れられていくでしょう。興味深いサービスですが、2006年の早い時期にベータ版を提供するとされていて、動く姿はまだ見えません。
この2つのサービスで特に注目されるのは、WindowsとOfficeという2つのブランドが冠せられていることです。いずれも、Windowsではないし、Officeでもありません。それにもかかわらず、このような最も重要なブランド名をサービスに付けてくるのは、マイクロソフトの本気度を示すものではないかと思います。
ハイライト3・Ajax? いえAraxです |
Ajaxに対抗する話題も取り上げておきましょう。このプレスリリースは、Ajaxの弱点を克服したと称するArax(エイラックス、Asynchronous RPC and XML)を採用した「ダイナミック・コックピット」について述べています。とはいえ、Araxという言葉は、検索エンジンを使ってもほかの場所で見つからないので、このプレスリリースを発行した「オープンソース・ジャパン株式会社」が生み出した用語なのでしょう。
さて、このAraxはAjaxを過去のものにする画期的な技術なのでしょうか? プレスリリースを読む限り、Araxのクライアント側は、最終的にFlashによって動作するようです。そのためのシステムを構築する技術を提供するというのがプレスリリースの趣旨というように読み取れました。つまり、純粋に技術的な立場からは、JavaScriptとFlashはどちらが良いのか、という古典的な問いかけに帰着します。Ajaxがブームになる前から何度となく繰り返された議論だと思いますが、おそらく唯一の正解はないと思います。どちらが圧倒的に優れるということもなく、TPOに応じて使い分けるのが適当でしょう。
しかし、1つだけこのプレスリリースにはコメントする価値のある文章が1つ含まれます。それはAjaxの問題として示された「Webブラウザへ高い依存度、情報隠蔽の困難さ、再利用の難しさ」という部分です。これらは実は問題ではない、というよりも、むしろAjaxの長所として数えるべきものが多いと思うのです。まさかと思うかもしれませんが、簡単に説明しましょう。
まず、「Webブラウザへ高い依存度」という部分ですが、依存性が少ないプログラムが良いプログラムという考えは、常識のようでいて、実は倒錯しています。完全無欠のシステムなど存在しない以上、常にどこかで依存性が入り込んでくる余地があり、また個別のシステムが独自に持つ便利な機能というものもあります。それらを明確に意識して扱う限り、依存性を少なくしようとする努力は労力の割に得るものが少ないといえます。むしろ、依存するものだと割り切って取り組んだ方が、より少ない労力で多くを手にできる可能性があると思います。つまり、すべてのWebブラウザのあらゆる機能に対応するというような理想を捨てられる割り切りの心さえあれば、Ajaxのやり方は合理的かつ実利的であると思うのです。
次に、「情報隠蔽の困難さ」ですが、これは私のAjaxへの印象に反します。まず、JavaScriptで書くと何もかもソースコードを見られてしまうから、ノウハウを隠せないという考えは一部の領域を除き、誤っています。Ajaxを用いたシステムでは、大抵の場合、プログラムがサーバ側とクライアント側に分割され、実装されています。クライアント側つまりJavaScriptで書かれる部分は、ほとんどの場合ユーザーインターフェイスに関する機能だけです。つまり、ユーザーインターフェイス以外の機能に関してはサーバ内に隠され、外部からうかがい知ることはできないのです。そして、ユーザーインターフェイスの実装コードには、隠す価値がある画期的なノウハウが含まれることは多くありません。また、JavaScriptのコードも難読化ツールによって極めて読解が困難な形で提供されている例もあります。つまり、Ajaxのやり方でも、大抵の場合は困らないのです。
最後に「再利用の難しさ」ですが、これはそもそも再利用という言葉を持ち出すことが時代遅れであると感じます。プログラム開発での「再利用」という考え方は特にオブジェクト指向プログラミングの世界で強調されてきたものですが、これはすでに破たんした考え方だと私は見なしています。なぜかといえば、未知の未来のプログラムで再利用可能となるようにクラス等を開発する手間は極めて大きくなるのに対して、それだけの手間を掛けたものを再利用しようとしても、うまく使えない事例が多いからです。つまり、手間に比して得るものが少な過ぎるのです。ちなみに再利用(=未知の未来に備えること)を戒める標語がYAGNI (You Aren't Going to Need Itの略。「それは必要にならない」)だろうと思います。
それはさておき、一方でJavaScriptでもフレームワーク的なプログラムを用意して、汎用的に拡張可能、再利用可能なモジュールを使っていくという動きもあり、それは可能です。JavaScriptは世間一般が認識しているよりも優れた言語であり、そのような試みは十分に可能だと思います。つまり、仮に再利用を意識するとしても、そのための方策は十分にあり得るということです。
ちなみにもう1つ補足すれば、AraxではRPCを使うことが長所であるというようにも読み取れますが、これが本当に長所になるのかという疑問もあり得ます。インターネット上で汎用的にRPCを行うメカニズムであるSOAPが、あれほど大々的に宣伝されつつもいまひとつ利用例が多くない状況から考えて、RPCよりもテキスト、XML、 JSONなどの形式でデータを転送する方式の方が実用度が高いのではないか、という印象があります。
| 1/2 |
|
INDEX |
||
| Ajax、それはWeb 2.0へと続く道 | ||
| Page1<Web2.0への道>Googleの独走を許すな! Yahoo!地図情報の逆襲!!/Windows Live/Ajax? いえAraxです | ||
| Page2<仮想ブラウザ/HTMLリアルタイム編集など> 対話的なCSSデザイナ/Google ローカル(Maps)が世界測地系に変わる!/書籍 「入門 Ajax」 | ||
Ajax うきうき Watch バックナンバー
- 第1回 Webアプリのユーザビリティを改善しまくるAjax
- 第2回 Ajax、それはWeb 2.0へと続く道
- 第3回 どんなに無茶をやっても「それもありかな」なAjax
- 第4回 自動車業界のAjaxを活用したキャンペーンを目撃せよ
- 第5回 “どのブラウザでも動くAjax”を共有財産として育てよう
- 第6回 プロプライエタリ2.0から考えるAjaxの公開/非公開部
- 第7回 メモリリークが小さくなったGoogle Maps APIの新版
- 第8回 “CGUI” 消費者が作り出すUIの時代突入
- 第9回 巨大化するAjaxライブラリをシンプルにする新たな流れ
- 第10回 地図のように年代を移動できるMITのAjax歴史年表
- 第11回 JSONがRFCになり、どんどんこなれるAjaxサービス
- 第12回 サーバが通信を開始できるComet活用Webチャット
- 第13回 オンラインゲームで検索精度を上げるGoogleの巧みさ
- 第14回 IE7とFirefox 2への利用者の大移動は起こるか?
- 第15回 グーグル検索エンジンを特定ジャンル専用に、Co-op
- 第16回 帯域やデバイス領域をフル活用させる“モバイルAjax”
- 第17回 新しい技術を模索するYahoo!、Google、MS
- 第18回 Ajaxの高度な使用例、Yahoo! pipes
- 第19回 Apollo参戦でウィジェット開発者の争奪戦が激化
- 第20回 Twitter登場で注目されるRTコミュニケーションツール
- 第21回 過熱するTwitterブームとMicrosoftのマッシュアップ
- 第22回 iPhoneのAjax戦略、そして今日もWeb APIは増加する
- 第23回 Ajax開発者がヒーローになるとき、それはいま!
- 第24回 携帯電話への拡張を進めるGoogleとWeb隠しコマンド
- 第25回 Ajaxで加速!? エンタープライズ2.0とWebOSの普及
- 第26回 「言葉」を超えた説得力を持つAjaxの存在感と広がり
- 第27回 ゲームから読み解く、俺スクリプト時代の知的な挑戦
- 第28回 マッシュアップ元年が終わり、2008年はどうなる?
- 第29回 Twitterやクラウドへも分岐するAjax/Web APIの道
- 第30回 Ajaxはじめて物語、そしてサーバでも動くJavaScript
- 第31回 新ブラウザ戦争はon fireだがJavaScriptはoffのナゾ
- 第32回 Google App EngineはAjaxへのハードルを下げるか?
- 最終回 Pure JavaScriptの動画再生やRPGも好きでした
AjaxとPHPでリッチクライアント
Ajaxを扱うためのサーバーサイドのPHPライブラリを紹介する。リリースされたライブラリ、AjaxACを活用して好みの検索窓に改造してみよう
AjaxでつくるインタラクティブWebアプリケーション
AjaxでWebフォトアルバムを、ゼロから開発する。ライブラリを用いて機能を作り上げていくステップを、具体的に解説する
| 古くて新しいAjaxの真実を見極める 「Webインターフェイスの新しい手法」「画期的なWebアプリケーションの仕組み」であるとして開発者たちの人気を集めるAjaxとは何なのか、その真実を見極めてみよう 最終更新 2005/8/2
|
||
ホワイトペーパー(TechTargetジャパン)
- いまさら聞けないTwitter超入門−@IT記事も対応なう (2010/2/4)
Twitterは最近話題のつぶやきツール。基本的な使い方から、iPhoneアプリの使い方、RTの解説、4人のご意見番の活用例や感想まで - HTML5は開発者側の都合。ユーザーには関係ない (2010/2/2)
3つのレンダリングエンジンを載せている“国産”ブラウザベンダは、HTML5やWeb/ブラウザの進化について何を語るのか - テキスト・フォント周りをキレイに見せるCSS、13選! (2010/1/29)
無数にあるCSSのプロパティを大まかに分類し、1つずつ紹介していく本連載。初回は、テキスト・フォント周りについて - OpenGL ESが大変な3Dアプリ開発を楽にするUnity (2010/1/27)
iPhoneゲーム開発に必須のOpenGL ES。そのコーディングに手こずっている方に有用なツールを紹介し簡単なサンプルを作成します
|
|
スキルアップ/キャリアアップ(JOB@IT)
スポンサーからのお知らせ
お勧め求人情報

**先週の人気講座ランキング**
〜CCNA編〜
| ◆ | 企業の仮想化に足りない“発想”とは? 仮想化運用管理のキモは意外なところに! New! |
| ◆ | 操作もマニュアルも分かりやすい! ユーザー視点で開発されたPC管理ツール New! |
| ◆ | 仮想化すればコストは削減できるか? 仮想化に必要な「3つの視点」を解説する |

| ◆ | セキュリティを知り尽くす上野氏が登壇! @ITメールソリューションLive! in Tokyo |
| ◆ | 運用管理の課題を“2つの観点”から分析 ユーザー満足度の高い「仮想環境」とは? |
| ◆ | 世界に通用するストレージの作り方とは? 製品に込めた思いを富士通の開発者に聞く |

| ◆ | OSSで手間も時間も、障害も減った―― 「マピオンの事例」オープンソース活用法 |
| ◆ | 「ノートPCの持ち出し禁止」で大丈夫? 情報漏えいを防ぐ管理手法とインフラは? |
| ◆ | 1日の処理を1秒に――MySQLの達人が語る 「コスト削減」できるチューニング |

| ◆ | ドキュメント作成を自動化して、SEの作業 効率を大幅アップ! Visio 2007の魅力 |
| ◆ | 急速に広がるHyper-Vでのサーバ仮想化 そのベストプラクティスをデルが解説 |
| ◆ | @IT主催セミナーで語られた、「担当者に 求められるセキュリティ対策」をレポート |

| ◆ | @IT「Windows 7」 特設サイトオープン! 最新情報・移行ノウハウを公開しています |






