Java auf dem Desktop: Der Klotz, den Java in den Abgrund zieht - JAXenter

Java auf dem Desktop: Der Klotz, den Java in den Abgrund zieht

Hartmut Schlosser

Einer der größten Computer-Hersteller unserer Zeit hält es nicht mehr für nötig, zur Steigerung seines Umsatzes eine Java-Lizensierung aufrecht zu halten. Für Apple-Entwickler Chris Adamson ist dies die eigentliche Botschaft Apples Ankündigung, Java nicht mehr zu unterstützen – eine Botschaft, deren ernsthafte Konsequenzen bei der lautstarken Kritik an Steve Jobs´ Unternehmenspolitik oft übersehen werden.

Die interessante Frage ist für Adamson, warum es sich Apple leisten kann, Java zu vernachlässigen. Und seine Antwort folgt auf dem Fuß: Java auf dem Desktop sei praktisch nicht existent und deshalb für Apple irrelevant. Die einzigen wirklich erfolgreichen Java-Desktop-Anwendungen seien die IDEs NetBeans, IntelliJ und Eclipse – ansonsten existiere Java nur Server-seitig. Zugleich sei die Java-Desktop-Technologie, angefangen bei AWT, Swing über SWT bis zum „verunglückten Versuch JavaFX“, derart vielfältig und komplex, dass eine Aufrechterhaltung in keinem Verhältnis zu deren tatsächlicher Wertschöpfung stehe.

All the value of modern-day Java is writing for the server, but nearly all the Java developers are using the desktop stuff to do so, making them the target market (and really the only market) for Desktop Java. If there were other viable Java applications on the desktop, used by everyday end-users, Apple couldn’t afford to risk going without Java. There aren’t, and it can. Chris Adamson

Diese Desktop-Komplexität führe schließlich dazu, dass die Entwicklungskosten für einen Java-Port für Mac OS zu hoch für Apple seien – so hoch, dass erstens nach Apples Rückzieher die Community alleine kaum im Stande sei, dieses Problem zu lösen, und zweitens auch kein anderes Unternehmen ohne Weiteres die Arbeit übernehmen werde, Java auf Mac-Systeme zu bringen.

Schlankheitskur für Java SE

Angesichts dieser Tatsachen schlägt Adamson ein neues Modell vor, in dem die Desktop-Packages vom Standard Java SE entkoppelt werden. Java SE enthielte somit die Komponenten, die jeder Java-Entwickler tagtäglich benötige: Collection, I/O, Sprach-Utilities etc. Eine neue „Java Desktop Edition“ würde dann SE plus AWT, Swing, Java2D, javax.sound, etc. beinhalten, untergeordnet könnte ein Java ME (reduziertes Java SE mit neuem Mikro-UI), Eclipse RCP (IDE, SWT, OSGi etc.) und die Android-Plattform ihren Platz finden.

Java-Modell nach Chris Adamson (Quelle)

Adamson gibt zwar zu, dass eine solche Umstrukturierung keineswegs ein einfaches Unterfangen wäre, stecke der Teufel doch wie so oft im Detail (etwa bei den schwierig aufzulösenden Abhängigkeiten im Package java.beans). Dennoch sollte man in der jetzigen Situation unbedingt den Ernst der Lage erkennen und sich mit dem Problem auseinandersetzen, dass die Zukunft Javas möglicherweise auch bei anderen Unternehmen auf der Kippe stehe.

Still, when the cost of the desktop packages is so high, and their value so low, they almost certainly need to be moved off the critical path of Java’s evolution somehow. The most important thing Oracle needs to provide in Java 7 or 8 is an exit strategy from desktop Java. Chris Adamson

Adamson endet mit einem etwas melodramatischen aber umso eindrucksvollen Bild: Ohne diese beschriebene Ausstiegsstrategie von Java aus dem Desktop-Bereich könnte sich das Desktop-Java zum Klotz am Bein entwickeln, das Java im Ozean der konkurrierenden Ansätze in den Abgrund zieht.

Geschrieben von
Hartmut Schlosser
Kommentare

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.