お使いのブラウザは最新版ではありません。最新のブラウザでご覧ください。

CNET Japan ブログ

Write Once, Runs Everywhere

2006/03/23 10:42
  • このエントリーをはてなブックマークに追加

プロフィール

中島聡

Microsoftでチーフアーキテクトを務めた経験を持つUIEvolution CEOの中島聡氏が、「Web 2.0」と呼ばれる新しいネット時代のサービスのあり方や、ライフスタイルの変化について考察します。
ブログ管理

最近のエントリー

 どんなデバイスでも動くアプリケーションという話になると思い出すのは、Sun Microsystemsが90年代の後半にJavaのプロモーションで使った"Write Once, Runs Everywhere"というキャッチフレーズである。しかし、蓋を開けてみると、パソコン用のJavaと携帯電話用のJavaは大きく異なるし、携帯電話用のJavaもDoJaとMIDPという二系統に分かれてしまっている。どうしてこんなことになってしまったのだろうか?

 マイクロソフトの妨害は確かに影響を与えたが、私は一番の失敗はマーケティング的にはウェブ・アプリケーションを可能にするシンクライアント陣営の武器としてJavaを提供しておきながら、実は従来型のリッチ・クライアント・アプリケーション向けのプラットフォームだった、ということにあると解釈している。

 Javaは、当時のパソコンにとってすらかなり重いものであった上に、ウェブ・アプリケーションで使われるはずであったJava Appletの仕組みは、一見シンクライアント的にブラウザーの中で動いているものの、良く見ると「プログラムをクラス単位でサーバーからダウンロードして走らせる」というリッチ・クライアント・アーキテクチャーになっているという代物であった。そのため、大規模なウェブ・アプリケーションの構築には向いておらず、ごく一部のウェブサイトのミニアプリ以外にはほとんど使われなかった。

 ネットワーク時代の次世代アプリケーションの掛け声とともにリリースされたStar Officeも、実は巨大なリッチクライアント・アプリケーションに過ぎなかったのも、Javaそのものがウェブ・アプリケーションの構築を想定して設計されていなかったことに起因する。

 それに加え、「機能はWindowsに劣るけれどもどこでも走る」というブルー・オーシャン戦略を採らずに、「豊富なAPIでWindowsに対抗する」という真っ向からの戦いを挑んだために肥大化してしまい、2000年代に入って携帯電話にJavaが採用された時には、パソコン用とは全く異なるVMとライブラリを用意しなければならなくなってしまったのである。

 後から言うのは簡単だが、Sun MicrosystemsがNetscapeの主張するウェブ・アプリケーションのビジョンの本質を理解して、最初からはるかに軽いVMを作っていれば、状況は大きく違っていたかもしれないと思うと残念である。

※このエントリは CNET Japan ブロガーにより投稿されたものです。朝日インタラクティブ および CNET Japan 編集部の見解・意向を示すものではありません。
運営事務局に問題を報告

最新ブログエントリー