Another Cup of Coffee - Java is free!

Aufregendes ließ Sun verlauten; ist ab sofort im Quelltext verfügbar!

Alle, die auf einen Test von kaffe für MiNT warten, muss ich leider vertrösten, da mir zum Test mein Milan nicht zur Verfügung stand. Aber auch ohne Milan und kaffe gibt es einiges über Java zu berichten, hauptsächlich natürlich über das neue Vertriebsmodell. Beginnen möchte ich aber mit einer News-Meldung, die den Atari betrifft, allerdings das VCS2600.

Erster Atari-Emulator in Java

JavaST läßt leider noch immer auf sich warten, und die Homepage wurde schon länger nicht mehr aktualisiert, obwohl angeblich "Bubble Bobble" lauffähig sein soll Dafür wurde ohne großes Aufheben eine neue Portierung von Stella vorgestellt, dem VCS2600-Emulator. Die Java-Version ist kein Applet für den Browser, sondern eine Java-Application, die nicht im Browserfenster läuft. Da die Version auf Stella basiert, ist auch Java-Stella ein hervorragender VCS-Emulator, auf dem nahezu alle VCS-Spiele perfekt laufen.

Sun gibt Java frei!

So war es zu lesen, und es war zunächst erstaunlich, denn Sun wacht ähnlich streng über den Java-Sourcecode wie Microsoft über seinen Windows-Sourcen. Auf den Webseiten von Sun wird es natürlich so dargestellt, als ob es ein freimütiger Schritt war, in Wirklichkeit war es eher sanfter Zwang.

Wie es begann

Als Sun Java vorstellte, verbreitete sich die Programmiersprache wie keine zweite über alle Systeme und wurde schnell als "Windows-Killer" bezeichnet. Hauptgrund dafür war die Systemunabhängigkeit von Java-Applets und -Applications. Diese Eigenschaft hatten andere Sprachen aber auch am Anfang ihrer Entwicklung, nur zersetzten zahllose Dialekte die Systemunabhängigkeit. Ähnliches sollte bei Java nicht passieren, und so lizenzierte Sun zwar Java für andere Hersteller, sah aber strenge Kompatibilitätstests und für sich selbst das Recht auf Erweiterungen vor.

Ausgerechnet Microsoft setzte sich für eine völlige Freigabe von Java ein, natürlich nicht ohne Hintergedanken: Modifizierte Java-Versionen, die auf Windows angewiesen wären, würden Java zu einer gewöhnlichen Programmiersprache wie C degradieren. Ein Versuch Microsofts, diese sog. "Pollution"-Strategie zu verwirklichen, scheiterte jedoch vor Gericht. Da aber mehrere andere Hersteller alternative Java-VMs angekündigt hatten, musste Sun in irgendeiner Form reagieren und dies geschah im Januar/Februar.

Die Zukunft von Java

Java soll als internationaler Standard vorgeschlagen werden, und die Weiterentwicklung wird damit nicht mehr nur von Sun bestimmt. Vermutlich wird es eine Art Konsortium aus den großen Software-Herstellern geben, die dann die Weiterentwicklung vorantreiben.

Auch die Industrie interessiert sich mittlerweile für Java, um Haushaltsgeräten mehr Intelligenz zu geben. Damit ist nicht nur der im Internet surfende Kühlschrank gemeint, sondern durchaus auch sinnvolle Dinge.

Suns Open-Source für nicht-kommerzielle Produkte

Für nicht-kommerziellen Gebrauch werden weder Lizenzgebühren noch Kompatibilitätstests verlangt. Die Java-Klassen dürfen nach eigenen Wünschen modifiziert werden, ohne daß die veränderte Java-VM an Sun geschickt werden muss.

Kommerzielle Produkte

Wenn der modifizierte Source-Code von Java in einem kommerziellen Produkt vertrieben wird, werden Lizenzgebühren fällig. Früher musste vor dem Vertrieb eine Gebühr an Sun entrichtet werden, was natürlich nur für große Firmen tragbar ist. Jetzt lautet das Motto: "We make money only when the licensee makes money." Diese Produkte müssen dann auch durch die Sun-Kompatibilitätstests, die verhindern sollen, daß es zu Inkompatibilitäten zwischen den Java-VMs kommt. Wird dieser Test bestanden, erhält das Produkt das "Java Compatible"-Logo.

Java-Versionen

Die neuen Regelungen betreffen Java 2 und nicht momentan übliche Java 1.1.

Java 2 wurde zwischenzeitlich Java 1.2 genannt und bietet etliche Verbesserungen inkl. einer besseren Performance. Die Abwärtskompatibilität bleibt erhalten.

Alternative VMs

Die bisherigen alternativen Java Virtual Machines hatten alle einen entscheidenden Nachteil: Die Programmierer mussten das Sun-Original mühsam nachprogrammieren. Kaffe ist eine solche nachprogrammierte Java-VM und kann nicht mit dem Sun-Original konkurrieren.

Portierungen

Bisher gab es nur zwei Plattformen, die von Sun direkt unterstützt wurden: Solaris (Unix-Derivat von Sun) und Windows. Neue Java-Versionen waren also zuerst auf diesen Plattformen verfügbar, und dann mussten sich diverse Entwickler an die Arbeit machen, ihre VMs anzupassen. Netscape hat eine halbe Ewigkeit gebraucht, um überhaupt Java l. l auf allen unterstützten Plattformen umzusetzen. Plattformen, die nicht von Netscape unterstützt wurden, blieben weitgehend ausgeschlossen. Dank der erheblich freieren Lizenzpolitik von Sun sind Portierungen des Originals oder modifizierten Versionen erheblich einfacher.


Mia Jaap
Aus: ST-Computer 03 / 1999, Seite 47

Links

Copyright-Bestimmungen: siehe Über diese Seite