Die Entstehungsgeschichte


1.1 die ursprüngliche Zielsetzung

Ursprünglich hatte das Programmierteam um James Gosling 1990 damit begonnen eine neue Programmiersprache für ´Consumer Electronics´ und ´Settop-Boxen´ zu entwickeln. In Anlehnung an die Programmiersprachen SmallTalk und C++ wurde eine stark objektorientierte Sprache entwickelt. Es handelte sich um kleine Programme, die z.B. über die TV-Kanäle übertragen werden sollten um das TV-Programm interaktiv und interessanter zu gestalten. Zielsetzung war es, ein kleines, sehr flexibles System zu schaffen, das auf keine Hardwareausstattung und Prozessortypen festgelegt ist. 1992 stand die erste Version von OAK, die erst später aus urheberrechtlichen Gründen in Java umbenannt wurde. Sie enthielt ein komplettes Betriebssystem, eine Programmiersprache, eine Entwicklungsumgebung und eine speziell dafür entwickelte Hardwareplattform.

1.2 Ausrichtung auf ein neues Medium

Der Markt der intelligenten Unterhaltungselektronik entwickelte sich jedoch nicht so schnell wie ursprünglich erwartet. Erst die explosionsartige Entwicklung des World Wide Web mit den Standards HTML und http verschaffte der Sprache dann ein völlig neues Anwendungsgebiet und das Internet sollte das zukünftige Transportmedium für die kleinen Programme sein. Um der Sprache die Chance zu geben, sich auf dem Markt durchsetzen zu können wurden 3 Kriterien in den Mittelpunkt der Entwicklung gestellt.
  1. Um alle Möglichkeiten des Internet und des WWW auszuschöpfen, muß diese Sprache plattformunabhängig sein. Sie muß auf Unix- genauso wie auf Solaris- oder Windowssystemen anwendbar sein. Trotzdem sollte sie alle modernen Eigenschaften heutiger Betriebssysteme, wie z.B. graphische Benutzerschnittstellen, Netzwerkanbindung und Nebenläufigkeit, unterstützen.
  2. Zwar lassen sich mit den bekannten Browsern wie Netscape Navigator oder Mosaic jegliche Daten von einem Server laden, diese sind aber nur statisch, oder werden immer neu vom Server geladen, was eine nicht unerhebliche Zusatzbelastung für die Server und auch für das Netz bedeutet. Die Innovation besteht also darin, Programme zu laden und sie auf dem lokalen Rechner laufen zu lassen. Dessen Intelligenz liegt also nicht mehr brach. Die Übertragung von Programmen über das Internet erfordert allerdings auch ein hohes Maß an Sicherheit, Schnelligkeit und Robustheit.
  3. Um die zukünftigen Entwickler von Java-Programmen anzusprechen, soll diese Sprache einfach sein, ohne den oben angesprochenen Komfort zu vernachlässigen.