Java – die Sonne am Himmel der Programmierer

Im Jahr 1982 gründeten drei Männer das Unternehmen SUN (Stanford University Network). Alle drei trieb die Frage um, wie man die Bibliotheksrechner der Stanford University vernetzen könne. Bis heute ist daraus ein Unternehmen geworden, das mit Hardware, vor allem Servern, und Software jährlich über 3 Mrd. Dollar Umsatz macht. Die Geschichte wäre lange nicht so erfolgreich gewesen, wenn es Sun Microsystems nicht gelungen wäre, immer wieder vorwärts denkende Mitarbeiter/innen zu engagieren. Unter Ihnen James Gosling.

Diesem Mister Gosling ist der Anstoß zum erfolgreichsten Produkt der Sun Microsystems zu verdanken. Bereits 1992 dachte er über Software nach, mit der man ganz unterschiedliche Haushaltsgeräte wie Waschmaschine, Toaster, Kaffeeautomat etc. steuern könnte. Er sah, dass die ständige Modernisierung und damit Veränderung der Steuerchips in diesen Geräten die gängigen Programmiersprachen vor Probleme stellen würde. Dass man solche Programme in Fortran, Cobol oder C++ schreiben kann, war nicht der Knackpunkt. Das Problem taucht beim Kompilieren, beim Übersetzen auf. Denn die Übersetzung ergab in der Regel einen Code, der nur von einem Prozessor verstanden wurde. Um dieses Problem zu lösen, schlug James Gosling vor, eine Programmiersprache zu entwickeln, die nicht von bestimmten Prozessoren oder Betriebssystemen abhängig war. Das Projekt stand jedoch mehrfach auf der Kippe. Denn für die Hersteller von Haushaltsgeräten kam die Idee zu früh.

Mit der ersten Internet-Euphorie der folgenden Jahre ließ sich das Projekt in etwas anderer Richtung genial fortsetzen. Denn auch vernetzte Systeme hatten das Problem, dass sich an ihren Knoten und Enden vollkommen unterschiedliche Geräte und Softwareprodukte befanden. Die erste konkrete Anwendung in der neuen Programmiersprache waren die Java-Applets. Das waren kleine Programme zum Herunterladen aus dem Netz, die dann bestimmte Funktionen auf einem Endgerät erfüllen sollten. Damit diese kleinen Applets auch sicher waren und keinen Unfug auf Rechnern anrichten konnten, gab man ihnen eine Ablaufumgebung und einen extra Container: Hotjava. Dieser Container war für Dateninitialisierung, Start und Stopp, Produktion und Aktualisierung grafischer Darstellungen und für das Ende der Anwendung zuständig. Hotjava war von außen nicht zugänglich, so dass von den Applets keine Spionage- oder Virengefahr ausging.

Warum Java und nicht Fidschi?

Zunächst hatte James Gosling sein Software-Projekt nach dem Baum vor seinem Büro benannt, ganz einfach „Oak“ (Eiche). Doch wie es häufig läuft, wenn Juristen ins Spiel kommen, tauchten Bedenken auf. Der Name „Oak“ schien schon anderweitig reserviert zu sein. Also überlegten die Programmierer kurz und kamen dann auf etwas ganz Naheliegendes:

Das wichtigste Arbeitsmittel der bis tief in die Nacht arbeitenden Entwickler war der Kaffee. So war der ständige Spruch: „Give me a cup of java, please“ („Gib mir bitte eine Tasse vom Java“, denn ein Großteil des Kaffees kam von der indonesischen Insel Java). Dieses Wort hatte noch niemand im Zusammenhang mit Software gesetzt, und so ging der Name durch. Wenig später wurde das dazu passende Logo kreiert, eine stilisierte dampfende Kaffeetasse. Und so wurde der Java Programmierer geboren.

Die virtuelle Maschine

Der entscheidende Grund für die Verbreitung der Java Applets war nicht die große Idee oder die erstklassige Funktionalität, sondern eine Kooperation mit der Firma Netscape, deren Browser schnell zum weltweit meistgenutzten aufstieg. Doch mit den Java Applets hatte sich die Idee längst nicht erschöpft. Noch im gleichen Jahr brachte Sun die erste Version einer Java-Entwicklungsumgebung auf den Markt. Dieses „Java Development Kit“ JDK stand Entwicklern weltweit als freier Download im Internet zur Verfügung. Mit dem JDK konnte man nicht nur Applets programmieren, sondern ganze Programme, selbstständige Applikationen. Der Clou im JDK war jedoch der implantierte Computer, der plattformunabhängig arbeitet. Selbstverständlich ist diese Hardware rein virtuell in der Software vorhanden. Sun nennt diesen Computer JVM (Java Virtual Machine). Er ist das Element, das in einem zweifachen Übersetzungsvorgang in Java geschriebenen Code für die Maschine lesbar macht. Und das funktioniert in etwa so:

1. Ein Programmierer schreibt den Programmcode in der Programmiersprache Java. Der Code ist für Menschen gut lesbar.
2. Ein Compiler als Bestandteil des JDK übersetzt den Code in eine maschinennahe Form, die sich Java-Bytecode nennt. Der Java-Bytecode ist auf allen Maschinen einsetzbar, wenn dort JVM installiert ist.
3. Die virtuelle Maschine (JVM) führt den Java-Bytecode aus, nachdem ihn der integrierte Interpreter zunächst in die Sprache der jeweiligen Maschine übertragen hat.

Siedeln Sie jetzt nach Java über! Kostenlose Infos zum Lernprogramm hier.

Was macht den Erfolg von Java aus?

Sicher in erster Linie die nahezu universelle Einsetzbarkeit. Eine freie Entwicklergemeinde hat neben der Herstellerfirma für den hohen Verbreitungsgrad und immer neue Anwendungen gesorgt. Bis heute hat die Java Plattform mehr als 5 Millionen Software-Entwickler angezogen. Wie vielseitig, effizient, mobil und sicher Java ist, zeigt am einfachsten eine beeindruckende Übersicht der Geräte, die Java unterstützt:

Ihre Zahl liegt bei mehr als 4,5 Milliarden, darunter

  • 800 Millionen Computer (vom Laptop bis zum Rechenzentrum)
  • 1,5 Milliarden Mobiltelefone und andere Handheld-Geräte (Quelle: Ovum)
  • 2,2 Milliarden Smart Cards
  • Set-Top-Boxen, Drucker, Web-Kameras, Spiele, Fahrzeug-Navigationssysteme, Lotterie-Terminals, medizinische Geräte, Parkgebührautomaten usw.

Java ist die populärste Programmiersprache weltweit. Sie entspricht den Vorstellungen einer modernen Programmiersprache, ist objektorientiert und biete inzwischen eine wertvolle Palette an fertigen Klassenbibliotheken für alle möglichen Einsatzzwecke. Java ermöglicht:

  • Software schreiben auf einer Plattform und die Ausführung auf beinahe jeder anderen Plattform.
  • Programme zu erstellen, die in einem Webbrowser und in Web-Services ausgeführt werden.
  • Serverseitige Anwendungen für Online-Foren, Stores, Umfragen, HTML-Formularbearbeitung u. v. m. zu entwickeln.
  • Anwendungen auf der Grundlage der Java Programmiersprache zu kombinieren, um daraus äußerst flexible Anwendungen oder Services zu schaffen.
  • Leistungsfähige und effiziente Anwendungen für Mobiltelefone, Remote-Prozessoren und fast jedes digitale Gerät zu schreiben.

Suchen



gratis-infos-box