差分

ナビゲーションに移動 検索に移動

Write Once, Run Anywhere

3,061 バイト追加, 2012年8月6日 (月) 08:51
ページの作成:「'''Write Once, Run Anywhere'''とは、Javaで書かれたプログラムOSデバイスなどのプラットフォームに依存しない、と...」
'''Write Once, Run Anywhere'''とは、[[Java]]で書かれた[[プログラム]]は[[OS]]や[[デバイス]]などのプラットフォームに依存しない、ということを意味する[[Java]]公式スローガン、いわゆる掟である。

== 概要 ==
[[Java]]で作られた[[プログラム]]は[[OS]]や[[デバイス]]を問わず動かすことができる(ようにしたい)、という理想である。

[[Java]]は第三者によるJavaコンパイラーおよび[[Java仮想マシン]]を認めているが、この「Write Once, Run Anywhereという理想を実現する」という大義名分のもと、[[サンマイクロシステムズ]](現:[[オラクル]])の厳しい品質チェックを受け合格しなければならない。

<!--
どうしてもこの枠組みから外れたJava互換品が必要とあらば「ライセンス料を払え」というのが、Java開発者がJava関連品を無料で配布しているにも関わらずご飯を食べていける理由である。
-->

== 問題 ==
実際問題として、純正の[[Java仮想マシン]]であってもプラットフォームごとの互換性は微妙である。

=== Windows問題 ===
[[マイクロソフト]]が[[Java]]から[[ネイティブコード]]を呼び出せるように改造したとして、この品質チェックに不合格となった。

また不合格の[[Java仮想マシン]]を[[Windows]]に同梱配布したとして訴えられた話は有名である。そして[[Windows]]から[[Java]]が消え去った。

ちなみに[[マイクロソフト]]が実装したこの機能と同様なものが欲しいという要望が殺到したのか知らないが、後に[[Java Native Interface]]として公式に再実装されている。

=== Mac問題 ===
[[アップル]]が純正[[Java]]にはない文字列描画時の[[アンチエイリアス]]を搭載し、純正[[Java]]よりも綺麗に文字列描画を行うように改造したとして、この品質チェックに不合格となった。そして[[Mac OS X]]から[[Java]]が消え去った。

<ref>http://japan.zdnet.com/os/analysis/20421920/</ref>

=== Android問題 ===
このWrite Once, Run Anywhereという厳しい掟だが、[[Sun]]は[[Google]]の[[Android]]にのみ特例を認めていた。

[[グーグル]]という会社は、[[サン]]の創業者の一人である[[アンディ・ベクトルシャイム]]が自身の出身大学であるスタンフォード大学の学生2人に出資して始まった会社であり、[[サン]]の子供のような存在であったため、下っ端社員レベルでは口出しできなかったためと言われている<ref>http://www.itmedia.co.jp/news/articles/1205/01/news032.html</ref>。

後に[[オラクル]]が[[サン]]を買収したことで、この特例が認められなくなり訴訟となった。

== [[インスパイヤ]] ==
* [[Write Once, Run Away]]

== 関連項目 ==
* [[Java]]

== 参考文献 ==
{{reflist}}

== 外部リンク ==

{{stub}}
匿名利用者

案内メニュー