10年前に始まったSun MicrosystemsとMicrosoftの間のJava戦争をリアルタイムで経験した人間にとって、当時の苦い思い出がよみがえり始めた。
今週初め、Googleは携帯電話ソフトウェアプロジェクト「Android」用のプログラミングツールをリリースしたが、これらのツールは既存のJava標準仕様の設定プロセスを避けて、Google独自のJavaを採用している。Sunは米国時間11月14日、GoogleのAndroidプロジェクトはJavaを互換性のない各種のバージョンに分断化する可能性があると懸念を表明してこれに応じた。
「何であれ、多様な、または分断化されたプラットフォームを生み出すものは(開発者の)利にかなっているとは言えない」とSunソフトウェア部門担当バイスプレジデントのRich Green氏は、サンフランシスコで開催中のOracle OpenWorldで記者たちに語った。「開発者からの『これを元に戻してくれ』という声が聞こえてくる」
Green氏によると、SunはGoogleと協力して、起こりうるあらゆる問題を事前に回避したい意向だという。「当社はGoogleと協力して、最終的に開発者が分断化された環境に置かれて困ることのないようにしたい。われわれはGoogleに働きかけており、Googleもそれに応じてくれると思う。そして、これらのプラットフォームやAPIの互換性が保たれ、幅広いプラットフォームでの配備が可能になるようにしたい」(Green氏)
Googleにコメントを求めたが、すぐには答えが得られなかった。しかし、今週初め、同社は、Androidで携帯電話の開発にかかわっているOpen Handset Alliance(OHA)のメンバーが、Google独自のJavaにプログラマーが今後も慣れ親しんでいけるようにしてくれると期待していることを示した。
現在、JavaはJava Community Process(JCP)によって管理されている。JCPでは複数の企業が、Javaシステムに取り入れるべき機能を投票で決め、Javaソフトウェアでそれらの機能が利用できるようにするためのAPI(Application Programming Interface)と呼ばれる標準的なメカニズムを作成している。Androidがどの程度までこれらのAPIに順応する予定なのか、または順応しなければならないのかは不明である。
ここでMicrosoftの歴史を復習したい読者のために述べておきたい。MicrosoftはJavaがオープンソースソフトウェアになるはるか以前の1990年代にJavaのライセンスを受けた。しかし、Microsoftは「Windows」マシンで異なる動作が可能になるようにJavaにいくつかの機能を追加した。Sun側はこの動きを「Write Once, Run Anywhere(一度書けばどこででも実行できる)」というJavaの原則を破たんさせる行為と見なした。
この記事は海外CNET Networks発のニュースをシーネットネットワークスジャパン編集部が日本向けに編集したものです。海外CNET Networksの記事へ