Javaのオープンソース化で苦悩するサン--レッシグらの助言も - (page 2)

Stephen Shankland (CNET News.com)2004年07月05日 18時50分

 O'Reilly Mediaの創設者、Tim O'Reillyによると、現在Javaコミュニティは調和の実現を迫られているという。Novellは6月30日に、Microsoft .Net開発プラットフォームのオープンソース版「Mono 1.0」をリリースした。Javaは、Javaプログラミング言語で記述されたプログラムを数台のコンピュータ上で実行させることができるソフトだが、Monoは多くの点で、このJavaと似ている。

 「部屋には一頭の象がいる。MonoプロジェクトがLinuxでオープンソース化に取り組んでいるのはJavaではなく.Netだ。Microsoftはオープンソースコミュニティにうまく入り込んだ」(O'Reilly)

Javaを愛しているなら、開放しよう

 オープンソースソフトは、コードの閲覧、修正、再販を誰でも自由に行なうことができる。一方、JavaはSunが主催するJava Community Process(JCP)が管理しており、Java製品は複数の互換性テストに合格しなければならない。ソフトウェアのJavaへの変更に寄与したいと考える開発者や団体は、JCPに参加し、同機関のやり方を遵守するとの法的合意書に署名する必要がある。

 これまでSunがJavaのオープンソース化に難色を示してきた最大の理由は互換性だ。これは学術的な懸念ではない。すなわち、SunはMicrosoftがJavaの機能拡張を図ったことで同ソフトの互換性が損なわれて以来、長年にわたって同社と対立してきた。仮にJavaがオープンソースであれば、互換性のないJavaを開発することも可能になってしまう。

 その一方で、オープンソースコミュニティは繁栄しており、オープンソースの世界では、Javaサーバソフトを実行させるためのTomcatやGeronimoといったアプリケーションサーバなど、多くのJava開発が行われている。

 TomcatとGeronimoはApache Software Foundationの後援を受けている。同団体は、JCPの標準化と連携する方法や、オープンソースの設計を損ねることなくJavaのTechnology Compatibility Kit(TCK)テストに合格する方法を見出した。Apacheの共同創立者Brian BehlendorfはJavaOneの討論会の中で、自由なオープンソースの分野と、より厳格な互換性テストの両立は可能だと確信していると語った。

 Behlendorfによると、互換性を主張し、それによってJavaの商標を使用したいと考えるプロジェクトの主催者は、TCKに合格する必要があるという。しかし、それによって他の開発のための道を閉ざすべきではない。「(TCKに)合格しない派生製品を作ることは、オープンソースプロセスでは当然なことだ」(Behlendorf)

 しかし、Javaの互換性もまた完璧に保たれているとは言えず、「一度(アプリケーションを)書いてしまえば、どのプラットフォームでも動作できる」というJavaの謳い文句も損なわれてしまっていると、Behlendorfは付け加えた。ある企業のJavaを土台にして書かれたソフトウェアを別のJava上で動かすために書き直さなくてはならないということはよくあるが、これも両者の機能に違いがあるためだ。一例を挙げると、Java Message Serviceを使ってあるシステムから別のシステムにメッセージを送信する場合に、各社のJavaごとに処理速度が異なる、といったことがある。

この記事は海外CNET Networks発のニュースをCNET Japanが日本向けに編集したものです。

CNET Japanの記事を毎朝メールでまとめ読み(無料)

-PR-企画特集

このサイトでは、利用状況の把握や広告配信などのために、Cookieなどを使用してアクセスデータを取得・利用しています。 これ以降ページを遷移した場合、Cookieなどの設定や使用に同意したことになります。
Cookieなどの設定や使用の詳細、オプトアウトについては詳細をご覧ください。
[ 閉じる ]