Java

草創

Javaプラットフォームおよびプログラミング言語Javaは、1990年12月サン・マイクロシステムズが1つの内部プロジェクトを立ち上げたことから始まった。この内部プロジェクトでは、C++/C の代替となるプログラミング言語を開発した。この言語は、プロジェクトで Greenオペレーティングシステム (Green OS) と共に、同OSの標準言語として開発された。この言語は、1992年頃プロジェクト内では Oak と呼ばれていたが、後に Java の呼称に変更されることになる。呼称変更の理由は、Oakは既に別の会社が商標として使っていたからである。1990年頃、サンの技術者パトリック・ノートンは、自社のプログラミング言語 C++ と C の API(アプリケーションプログラミングインタフェース)と開発ツールに不満を募らせていた。その頃、情報技術の世界でNeXTが開発した技術が注目を浴びていたことがきっかけとなって、ノートンはサンで新技術の仕事をすることになった。なお、NeXTが開発したNeXTワークステーションNEXTSTEPオペレーティングシステムでは、公式開発言語としてオブジェクト指向プログラミング言語 Objective-C を採用していた。こうした経緯のなかで「ステルスプロジェクト」が始まった。ステルスプロジェクトには、始まってすぐにジェームズ・ゴスリンとマイク・シェルダンが参加し、プロジェクトの名称は「グリーンプロジェクト」に変更された。プロジェクトには他の技術者たちも参加し、彼らはアメリカ合衆国カリフォルニア州メンロパーク市サンドヒルロードの道沿いにある小さなオフィスで作業を始めた。プロジェクトの目的は、次世代の家電製品のための新しいプログラミング技術を開発することだった。サンはこの分野が重要な市場になると予測していた。プロジェクトチームでは当初はプログラミング言語としてオブジェクト指向プログラミング言語である C++ を採用することを検討していたが、いくつかの理由から C++ は却下された。彼らの目的は、家電製品すなわち組み込みシステムの技術を開発することだった。組み込みシステムでは、利用できるコンピュータ資源が少ないという制約がある。彼らは C++ ではコンピュータ資源を食いすぎると判断した。また C++ は複雑なプログラミング言語であり、C++ を使うプログラマは注意していても間違いを犯しがちである。C++ にはガベージコレクションの機能が無い。ガベージコレクションが無いということは、プログラマが自分でシステムのメモリを管理しなければならないことを意味する。プログラマが自分でシステムのメモリを管理することは、冒険的で間違いやすい作業である。プロジェクトチームは、いくつかの重要な機能について C++ の移植性が乏しいことも問題であると考えた。 このプロジェクトでの重要な機能とは、セキュリティおよび分散コンピューティングマルチスレッドであり、これらの機能が、プラットフォームに依存せずに使える必要があった。このような事情で、彼らはあらゆる機器に容易に移植できるプラットフォームが必要であると認識するようになった。一方で、サンの技術者ビル・ジョイは、ゼロックスパロアルト研究所Altoというワークステーション試作機のために開発されたプログラミング言語・Mesaと C の良いとこどりをした新しいプログラミング言語を構想していた。ジョイは Further という名前で呼ばれる論文を書き、自社で C++ に基づいたオブジェクト指向環境を開発するべきであることを進言した。まずジェームズ・ゴスリンが C++ を改変し拡張することを試みた。ゴスリンはこの拡張版C++を、"C++ ++ --" と名付けた。しかしゴスリンは、すぐにこの拡張版C++の開発を中止して、全く新しいプログラミング言語を開発する方針を採ることにした。ゴスリンはこの新しい言語に Oak という名前をつけた。この名前の由来は、ゴスリンのオフィスのすぐそばにオークの木が立っていたことによる。プロジェクトチームは残業までして作業を続け、1992年の夏までに新しいプラットフォームを、Green OS、Oak言語、ライブラリハードウェアによって部分的なデモンストレーションができるようになった。1992年9月3日の最初のデモンストレーションでは、チームは Star7という携帯情報端末機器を開発することに力点をおいていた。この機器の名称の由来は、電話機能が *7 とボタンを押すことで有効になることによる。この機器は、グラフィカルなインタフェースを備え、"Duke" という名前の知的な仮想代理人が利用者を支援した。同年11月、サンはグリーンプロジェクトを分離して完全子会社のFirstPerson, Incを設立した。それにともないチームはパロアルトに引っ越した。FirstPersonチームは、高度にインタラクティブな機器に関心を持っていた。そのおりタイム・ワーナーがケーブルテレビのセットトップボックスのRFP (Request For Proposal) を公表していた。そこでFirstPersonチームは自分たちの目標を変更し、タイム・ワーナーの RFP に応じてセットトップボックスの提案を提出した。しかし、FirstPersonは入札でシリコングラフィックス (SGI) に負けた。その後に3DO社のセットトップボックスの案件もあったが、契約には至らなかった。FirstPersonはテレビ業界では利益を出すことができず、サンはFirstPersonを解散してチームを自社に戻した。

戻る