Geschichte der Programmiersprache Java™

 

Am 23. Mai 1995 verkündete John Gage, der Direktor des Science Office der Sun Microsystems, zusammen mit Marc Andreesen, Mitbegründer und Executive Vice President bei Netscape, vor einem Publikum der SunWorldTM, dass Java-Technologie kein Mythos sei und dass sie in den Netscape Navigator integriert werden solle[1].

Zu diesem Zeitpunkt war die Gesamtzahl der Mitarbeiter, die an Java arbeiteten, weniger als 30[1] Dieses Team würde die Zukunft im nächsten Jahrzehnt gestalten, und niemand hatte eine Ahnung davon, was auf uns zukommt. Vom Betrieb eines unbemannten Fahrzeugs auf dem Mars bis hin zur Nutzung als Betriebsumgebung der meisten Unterhaltungselektronik, z.B. Kabel-Set-Top-Boxen, Videorekorder, Toaster und PDAs, ist[2] Java von Anfang an weit fortgeschritten. Mal sehen, wie alles begann.

Frühere Programmiersprachen

Bevor Java als Programmiersprache auftauchte, war C++ der dominierende Akteur im Handel. Das Hauptziel der Entwickler von Java war es, eine Sprache zu entwickeln, die die meisten der Dinge, die C++ bot, in Angriff nehmen konnte, während sie einige der mühsameren Aufgaben, die mit den früheren Sprachen einhergingen, loswerden konnten.

Computerhardware durchlief von 1972 bis 1991 eine Leistungs- und Preisrevolution. Bessere, schnellere Hardware zu immer niedrigeren Preisen war verfügbar, und die Nachfrage nach großer und komplexer Software stieg exponentiell an. Um der Nachfrage gerecht zu werden, wurden neue Entwicklungstechnologien entwickelt.

Die 1972 von Dennis Ritchie entwickelte C-Sprache hatte ein Jahrzehnt gedauert, um sich zur beliebtesten Sprache bei Programmierern zu entwickeln, die auf PCs und ähnlichen Plattformen arbeiten (andere Sprachen, wie COBOL und FORTRAN, dominierten den Mainframe-Markt). Aber mit der Zeit fanden die Programmierer heraus, dass die Programmierung in C mit ihrer strukturellen Syntax langweilig wurde.[3] Obwohl man versuchte, dieses Problem zu lösen, wurde später eine neue Entwicklungsphilosophie eingeführt, eine mit dem Namen Object-Oriented Programming (OOP). Mit OOP kann man Code schreiben, der später wiederverwendet werden kann, ohne den Code immer wieder neu schreiben zu müssen. 1979 entwickelte Bjarne Stroustrup C++, eine Erweiterung der C-Sprache mit integrierten OOP-Grundlagen und -Funktionen. Sun erzielte Einnahmen aus Java durch den Verkauf von Lizenzen für spezialisierte Produkte wie das Java Enterprise System.

Das grüne Team

Im Dezember 1990 wurde ein Projekt hinter verschlossenen Türen gestartet, mit dem Ziel, ein Programmierwerkzeug zu entwickeln, das die Programmiersprachen C und C++ überflüssig machen könnte. Der Ingenieur Patrick Naughton war extrem frustriert über den Zustand der C++ und C APIs (Application Programming Interfaces) und Tools von Sun. Während er darüber nachdachte, zu NeXT zu wechseln, wurde ihm die Möglichkeit geboten, an neuen Technologien zu arbeiten, und das Stealth Project wurde gestartet, ein geheimes Projekt, das niemand außer ihm kannte.

Dieses Stealth-Projekt wurde später als Green Project bezeichnet, als James Gosling und Mike Sheridan zu Patrick kamen[1] Als das Green Project zahnte, begannen die Perspektiven des Projekts für die daran arbeitenden Ingenieure klarer zu werden. Es ging nicht mehr darum, eine neue Sprache zu entwickeln, die den heutigen weit überlegen ist, sondern darum, andere Geräte als den Computer anzusprechen.

Mit 13 Mitarbeitern begannen sie in einem kleinen Büro an der Sand Hill Road in Menlo Park, Kalifornien, zu arbeiten. Dieses Team wurde fortan als Grünes Team bezeichnet. Das Projekt, das sie durchlaufen haben, wurde von Sun Microsystems gechartert, um die „nächste Welle“ im Computing zu antizipieren und zu planen. Für das Team bedeutete dies mindestens einen signifikanten Trend, nämlich die Konvergenz von digital gesteuerten Endgeräten und Computern[1].
Gedanken umgestalten

Das Team begann darüber nachzudenken, C++ durch eine bessere Version, eine schnellere Version und eine schnellere Version zu ersetzen. Aber eines war ihnen noch nicht eingefallen: Die von ihnen angestrebte Sprache musste für ein Embedded-System mit begrenzten Ressourcen entwickelt werden. Ein Embedded System ist ein Computersystem, das auf eine minimalistische Schnittstelle skaliert ist und nur wenige Funktionen von seinem Design verlangt. Für ein solches System erscheint C++ oder ein beliebiger Nachfolger zu groß, da alle damaligen Sprachen einen größeren Footprint benötigten, als gewünscht. Das Team musste also anders denken, um all diese Probleme zu lösen.

Bill Joy, Mitbegründer von Sun Microsystems, stellte sich eine Sprache vor, die die Kraft von Mesa und C kombiniert, in einem Artikel mit dem Namen Further, den er für die Ingenieure von Sun schrieb. Gosling sammelte Ideen und begann mit der Arbeit an der Verbesserung von C++ und nannte es „C++ ++ –„, ein Wortspiel auf die evolutionäre Struktur des Namens der Sprache. Das ++ und — bedeutete, Sachen ein- und auspacken. Bald gab er den Namen auf und nannte ihn Eiche[1] nach dem Baum, der vor seinem Büro stand.