Neues Roadmap-Update für Java: Sag zum Client leise Servus


#1

Toll. Demnächst lassen sie wahrscheinlich auch noch Swing weg :fearful:


#2

Das ist laut Oracle bis auf Weiteres nicht geplant. Leider finde ich gerade die Quelle nicht mehr, reiche sie aber gerne nach.

Nur JavaFX soll mit Java 11 das JDK verlassen.


#3

Normalerweise hätte ich jetzt gesagt, das ist eine ziemlich provokante Überschrift. Aber wenn sie die next-gen Technologien anfangen zu entfernen muss man sich Fragen was als nächstes unters Messer fällt und ob Desktop-Java überhaupt noch eine Zukunft hat oder Desktop-Anwendungen im allgemeinen. Geht der Trend doch Richtung Webanwendungen.


#4

cool … ich sehe schon das Gesicht des Kunden, wenn ich ihm erkläre das wir einen neuen Microprozessor brauchen um die komplette JRE mit zu liefern …


#5

Damit meinst du JavaFX? Das hat sich ja nie durchgesetzt. Ich denke, dass das zumindest zum Teil daran liegt, dass es in der ursprünglichen Version als “Flash-Alternative” mit eigener Sprache (!!!) ins Rennen geschickt wurde. (Flash, für die jüngeren, war … ach, lest’s selbst nach: https://de.wikipedia.org/wiki/Adobe_Flash ).

Eigentlich gibt’s in JavaFX ein paar richtig coole Sachen, gerade das ganze Observable-Zeug, was man sich in Swing teilweise sehnlichst gewünscht hat und was viele (mehr oder weniger “gut”, aber immer mit recht viel Aufwand) selbst nachgebaut haben.

Auch das Potential für “3D Support” haben sie irgendwie verpennt. Die Funktionalität von JavaFX 3D war praktisch die von Java3D, aber ohne programmierbare Shader bzw. ein vernünftiges Materialmodell lockt man heute keinen mehr hinter dem Smartphone hervor.

Tja, schade, schade. Soll ich Hoffnung daraus schöpfen, dass es in naher Zukunft einige wenige Firmen geben wird, die irgendwelche Legacy-Swing-Behemoths gewartet bekommen müssen, und ich mich (und das ist einer der ganz, ganz, wenigen Fälle, wo ich sowas auch nur andeuten würde) mit Swing doch ein bißchen auskenne? Wohl eher nicht.

Zum Tod gibt es nur eine Steigerung: Das Aussterben.


#6

Möglich, und am Ende gewann HTML5.

Allein die Auslagerung der GUI in die weit geeignetere XML Form aus dem Code heraus, das eine strukturiertere, dynamische und leicht austauschbare Oberflächenschnittstelle bildet, mit leicht umsetzbaren Effekten und die eine Umsetzung des Scene Builders erlaubt, rechtfertigt die Existenz über Swing.

Aber wenn sie das entfernen, dann hat Java in der Tat keine Zukunft mehr auf dem Desktop Markt. Oracles Prioritäten sind eindeutig. Ein Fehler, hier wird Platz für .Net gemacht. Jung-Programmierer fängt man nicht mit JEE.


#7

Also soweit ich es verstanden habe (und auch schon vor einziger Zeit gelesen habe), ist JavaFX nicht einfach “weg” sondern nicht mehr im Standard JDK/JRE enthalten. Man kann es wohl als normale Bibliothek selber dann hinzufügen wenn man es braucht.
Wobei ich eine auslagerung der Beans Sachen (das Observable Zeugs :smiley: ) ins JDK gerne sehen würde


#8

Und einige Alt-Programmierer auch nicht (bzw. man hält sie nicht). Java ist (und es dürfte kaum überraschen, wenn ich das sage) in vieler Hinsicht (und ich bin da für alles von technischen Argumenten bis hin zu polemischen Flamewars offen :smiley: ) einfach eine gute Programmiersprache. Und auch wenn man in jeder Sprache (egal ob sie gut oder schlecht ist) und mit jedem GUI-Framework (egal ob es Swing oder etwas schlechtes ist) vergleichsweise gute oder schlechte Programme schreiben kann: Ein GUI-Toolkit mit vernünftiger Model-View-Controller-Struktur in einer getypten Sprache, was “für’s Web” compiliert werden kann, als etwas, was sich gegen React+JavaScript stemmt, fände ich nicht verkehrt…


#9

Im “Standard-JDK” war’s ja auch nie, nur im Oracle. In den meisten OpenJDK-Distributionen muss man es schon immer nachinstallieren. Da ist der Schritt hin zu einer einfachen Bibliothek doch sogar von Vorteil.

Unter Umständen ist das auch positiv für die Entwicklung, einfach weil es getrennt vom JDK läuft.

Das hätte was :wink: Wobei das vermutlich nicht so leicht ist, ist ja recht verzahnt mit JavaFX


#10

Ich halte die Theorie, dass Java sich vom Desktop verabschiedet, für Blödsinn. Was sie machen ist einfach nur die logische Konsequenz aus der Modularisierung. Klar ist, dass Java hauptsächlich auf auf dem Server genuzt wird und da braucht man einfach kein JavaFX. Oracle versucht nur ein “Core-Java” bereit zu stellen, alles andere sind dann nur noch Zusatzmodule. Das machen sie mit JavaFX und werden sie auch noch mit Swing und AWT machen, Ich gehe auch davon aus, dass auch andere Sachen aus dem JDK fliegen.

Eigentlich braucht es das auch nicht. Als Entwickler habe ich Tools wie maven oder gradle um mir Zusatzmodule zu laden. Und wenn ich eine Desktop-Applikation vertreiben will, dann gibt es jetzt jlink um alles zusammen zu packen.

Ich finde das ziemlich cool, der Core kann dann unabhängig von allem anderen entwickelt und releast werden und auch neue Features für JavaFX müssen nicht mehr auf ein neues JDK-Release warten.


#11

Wenn ich jetzt sage, ich habs ja gesagt… gibts bestimmt ärger. :smile:

Ontopic: FX darf sich verabschieden, Swing/AWT sollte schon bleiben, sonst das alles so “kompliziert” - imho.