私の新しいブログ「英語うんちく」でも紹介したのだが、AppleがiPhone用のアプリケーションの開発環境として「ブラウザー上のAjaxのみ」としたことに関して賛否両論が飛び交っている。
普段から「すべてのアプリケーションはウェブ・アプリケーションであるべき」と主張している私としては、Appleがこうした理由は良く理解できる。
「アプリケーションはインストールしてから使う」のがあたりまえな(もしくはあたりまえだった)パソコンにおいては、Windows APIに代表されるリッチ・クライアント用のAPIを提供して、その上にサードパーティのアプリケーションを作ってもらうというのはプラットフォーム戦略としては当然のことであった。
しかし、携帯電話に代表されるモバイル端末になると事情は変わってくる。良い証拠が、SymbianとWindows Mobileだ。それなりのリッチ・クライアント用のAPIを用意しているもののアプリケーション市場が立ち上がっているとはまったく言えない。Qualcommが提供するBREWがC/C++から直接呼べるAPIとして唯一そこそこの成功を収めているが、開発者・キャリアにとって頭の痛い「検証」という工程が避けられない点が、オープンな開発を阻んでいる。
モバイル・マーケットでオープンなプラットフォームとして唯一の成功を収めているのがJavaだが、これも、明示的なダウンロードとインストールが必要な点が、ユーザー・エクスペリエンス(おもてなし)の面からまだまだである。日本の携帯アプリのマーケットで、莫大な開発費をかけて作った公式Javaアプリよりも、一発芸的なミニFlashアプリを集めた非公式サイトの方が人気が出始めているという点も注目に値する。
こうやって考えてみると、Appleが従来型のAPIを公開せずに、AjaxのみをiPhoneアプリ用の開発環境として提供すると決めたのは、業界の「ネットに繋がった端末向けのアプリのあるべき姿」をはっきりと方向付けるものとして一つの一里塚と見ることもできるように私には思える。