T1#market#consumer#enterprise
Java 発表 ── Sun Microsystems

メタデータ
- 日付
- 年代
- 1990s
- Tier
- T1
- 参照年表
- プログラミング言語の歴史
- 出典数
- 08
- 関連項目
- 03
- Tags
- #market#consumer#enterprise
Java は、Sun Microsystems が 1995年5月23日 に発表したプログラミング言語である。源流は1990年12月に Sun 社内で始まった Green プロジェクト で、言語を設計したのは James Gosling。Gosling が家電向けの携帯端末のために作った言語 Oak が、商標の都合で1995年初めに Java と改名された。正式発表の場は Sun の見本市 SunWorld で、ブラウザ HotJava が同時に披露された。完成版の Java 1.0(JDK 1.0)が無償公開されたのは翌 1996年1月23日 である。
「Java はいつ作られたのか」に一つの日付で答えるのは難しい。言語の作業は1991年前後に始まり、名前が Java になったのは1995年、製品として完成したのは1996年である。この記事ではその順に追う。
| 時期 | 出来事 |
|---|---|
| 1990年12月 | Gosling・Patrick Naughton・Mike Sheridan が Green プロジェクトを始める |
| 1991年4月 | チームが社外のオフィス(Sand Hill Road)に移る |
| 1992年9月3日 | 携帯端末 Star7 のデモが完成。動いていた言語が Oak |
| 1994年 | Web ブラウザ WebRunner(後の HotJava)を Oak で作る |
| 1995年初め | 商標の問題で Oak を Java に改名 |
| 1995年3月 | アルファ版を Web に公開 |
| 1995年5月23日 | SunWorld で正式発表。Netscape が Navigator への組み込みを表明 |
| 1996年1月23日 | JavaSoft が Java 1.0 を公開 |
Green プロジェクトと Oak
Gosling 自身の回想によれば、Green プロジェクトは1990年12月、Patrick Naughton・Mike Sheridan・Gosling の3人で始まった。課せられたのは、コンピューティングの「次の波」を見極めて乗ることである。チームが早々に出した結論は、デジタル制御の家電とコンピュータが融合していく、というものだった。
成果物として選んだのは論文ではなく、手に持てる試作機と事業計画だった。1991年4月にチームは Sun の本社を離れ、メンロパークの Sand Hill Road にある事務所へ移る。そこで作ったのが Star7(*7)と呼ばれる手のひら大の端末で、5インチのカラー液晶とタッチスクリーン、無線通信を備えていた。Sun の1998年の回顧記事は、チームは最大13人で、18か月のあいだ外部との通常の連絡を断って働いたと書いている。
Star7 の上で動いていたのが、Gosling がこの端末のために書いた言語 Oak である。名の由来は、彼の部屋の窓の外にあった樫の木だという。Gosling は Green の成果物を列挙するなかで、この言語を、小さく、安全で、分散的で、堅牢で、インタプリタで動き、ガベージコレクションを持ち、マルチスレッドで、アーキテクチャに依存しない動的な言語として並べている。後の Java の売り文句の多くが、すでにここにある。Star7 のデモは1992年9月3日に完成した。
ケーブルテレビからインターネットへ
チームは FirstPerson という名で外に出て、ケーブルテレビのセットトップボックスやビデオ・オン・デマンドの業界に技術を売り込んだ。しかし業界はまだ事業モデルを固められず、話はまとまらなかった。Gosling は後に、ケーブル会社は双方向のネットワークで手放すことになる支配力を嫌ったと振り返っている。
転機はレイク・タホ近くで開いた3日間の会合だった。John Gage・Gosling・Bill Joy・Naughton・Wayne Rosing・Eric Schmidt らが出した答えは、インターネットである。1993年の Mosaic で Web は一般の人にも使えるものになりつつあり、それはまさにチームがケーブル会社に作らせようとしていた種類のネットワークだった。チームは1994年、Oak で Mosaic 風のブラウザ WebRunner を作った。ページの中で図形が動き、利用者の操作に応じる ── 後に「アプレット」と呼ばれる仕組みの原型である。WebRunner は後に HotJava と名を変える。
Oak が Java になった理由
名前を変えたのは、法務の確認で Oak が使えないと分かったからである。1996年の JavaWorld の聞き取り記事で、当時の技術者 Frank Yellin は、Oak という名はすでに商標として押さえられていたと語っている。候補を出し合って約10個を法務に回し、問題なしで戻ってきたのが Java・DNA・Silk の三つだった。当時の CTO だった Eric Schmidt は、決定は1995年初めの定例会議だったと記憶している。誰が最初に Java を言い出したかについては、関係者の証言が一致していない。
1995年5月23日、SunWorld
改名後の動きは速かった。Sun の1998年の回顧記事によれば、1995年3月にはアルファ版(1.0a2)のソースコードが Web に置かれ、ダウンロードは数か月で数千件に達した。1996年1月の Java 1.0 の発表文も、最初のアルファ版を3月に Web に出したと書いている。
正式発表は5月23日、Sun の見本市 SunWorld の基調講演の中で行われた。Sun の同日のプレスリリースは、Java をインターネット向けのオブジェクト指向プログラミング環境と呼び、HotJava ブラウザを同時に発表している。アルファ版は SunOS・Solaris・Windows NT 向けに無償で公開され、Windows 95 版と MacOS 7.5 版は夏の終わりに出す予定とされた。リリースでは、東京の東芝の部門が Java を電子出版に使う検討をしていることも紹介されている。
回顧記事によれば、発表の数時間前の未明、Sun と Netscape は Java を Navigator に組み込む合意をまとめていた。基調講演で Netscape の Marc Andreessen が壇上に現れてそれを明かすと、会場は沸いた。この合意は、Netscape 側が別の言語を作るきっかけにもなる。Navigator に Java を補うスクリプト言語を載せることになり、それが同じ年の JavaScript である。
Java 1.0 ── 1996年1月23日
完成版は、Java 専門の事業会社として新設された JavaSoft から出た。1996年1月23日の発表文によれば、Java 1.0 は java.sun.com から無償でダウンロードでき、次のものを含んでいた。
| 構成要素 | 役割 |
|---|---|
| Applet Viewer | アプレットを動かして試す |
| Java コンパイラ | ソースをバイトコードにする |
| デバッガ(試作版) | 実行中のプログラムを調べる |
| Java 仮想マシン | バイトコードを各プラットフォームで実行する |
| クラスライブラリ | グラフィックス・音声・アニメーション・ネットワーク |
対応は Windows 95/NT(Intel)と SPARC 版 Solaris で、Mac OS 7.5 版は1996年第1四半期末の見込みだった。発表文の時点で IBM・SGI・Netscape・Oracle・東芝を含む15社が Java のソースのライセンスを受けており、Microsoft もライセンスの意向を示していた。仮想マシンだけを各プラットフォームへ移植すれば、同じプログラムがどこでも動く ── 発表文は、移植の作業が不要になるとまで書いている。JavaSoft の社長 Alan Baratz はこの性質を「write-once-run-everywhere」と表現した。
その後
言語仕様は Gosling・Bill Joy・Guy Steele の『The Java Language Specification』初版(1996年)にまとめられた。その序章は Java を、汎用・並行・クラスベースの オブジェクト指向 言語と定義し、C や C++ と近縁だが組み立ては大きく違う、と書く。C や C++ の要素のいくつかを省き、他の言語の考えをいくつか取り入れた。研究用ではなく実用の言語なので、新しく試されていない機能は避けたという。メモリは ガベージコレクション で自動管理され、C の free や C++ の delete のような明示的な解放は無い。添字の検査を省いた配列アクセスのような安全でない構文も持たない。プログラムは通常、機械に依存しないバイトコードにコンパイルされる。
Sun は2010年1月27日に Oracle による買収が完了して独立した会社ではなくなり、Java の運営は Oracle に移った。同時代の言語の中での位置は プログラミング言語の年表 に、Web での役割は インターネットと Web の年表 にある。
よくある質問
- Java はいつ作られたのですか。
- 源流は1990年12月に Sun 社内で始まった Green プロジェクトで、James Gosling がそこで前身の言語 Oak を作りました。Java の名での正式発表は1995年5月23日、完成版の Java 1.0 の公開は1996年1月23日です。アルファ版はそれより早く、1995年3月に Web に置かれていました。
- なぜ Oak から Java に名前が変わったのですか。
- Oak が商標として既に登録されていて使えなかったためです。当時の技術者 Frank Yellin によれば、候補を約10個出して法務に回し、問題なしで戻ってきたのが Java・DNA・Silk の三つでした。決定は1995年初めで、誰が Java を言い出したかは関係者の間でも記憶が分かれています。
- Java を作ったのは誰ですか。
- 言語の設計者は James Gosling です。Gosling は Green プロジェクトの家電端末 Star7 のために言語 Oak を作り、それが Java になりました。Green プロジェクト自体は Gosling・Patrick Naughton・Mike Sheridan の3人で始まり、最大13人のチームでした。
- Java 1.0(JDK 1.0)には何が入っていましたか。
- 1996年1月23日の発表によれば、アプレットを動かして試す Applet Viewer、コンパイラ、試作段階のデバッガ、Java 仮想マシン、そしてグラフィックス・音声・アニメーション・ネットワークのクラスライブラリです。対応は Windows 95/NT と SPARC 版 Solaris で、Mac OS 7.5 版は1996年第1四半期末の予定とされました。
出典
5月23日の発表、オブジェクト指向プログラミング環境という位置付け、HotJava、SunOS・Solaris・Windows NT 向けアルファ版
Java 1.0 の公開日、同梱物、対応プラットフォーム、3月のアルファ版
一次資料Gosling, J. A Brief History of the Green Project — archived from today.java.net
1990年12月の開始、創設メンバー、Star7 と言語 Oak、1992年9月3日の Star7 デモ
二次資料Byous, J. (1998). Java Technology: The Early Years — Sun Microsystems (archived from java.sun.com)
Green チームと FirstPerson、WebRunner(後の HotJava)、SunWorld での Netscape との発表
二次資料Murphy, K. So why did they decide to call it Java? — JavaWorld (1996), republished by InfoWorld
Oak の商標問題と、Java・DNA・Silk の候補
序章による言語の定義 ── C・C++ との関係、ガベージコレクション、バイトコード
最終更新: