Mit Java EE hatte ich ja (zum Glück?) nie wirklich was zu tun.
Aber mal nebenbei: Wofür wird denn heute überhaupt noch Java verwendet?
(Das ist eine ernstgemeinte Frage. Desktop? Tot. Web? Haha, JavaFX oder was? Server/Enterprise? Joa, anscheinend ja nicht so… (*mal kurz überschlägt, wie viele Jahre es noch bis zur Rente sind*…) )
Und was jetzt? C#, Kotlin oder gar Go? Oder direkt auf Quantencomputer aufspringen? Wenn die Antwort so einfach wäre, wäre ich schon lange gegangen.
Ich hatte vor ~7-9 Jahren mal im “Forum das nicht genannt werden darf” die Frage nach der Zukunft von Java gestellt, bezüglich Oracle und - joa - Oracle halt, und ich meine von dir die Antwort erhalten zu haben im Sinne von: Java ist viel zu groß. Was zählt ist die riesige Community. Das stirbt nicht einfach so.
Und du solltest tatsächlich recht behalten. Java befand sich zwar seitdem durchgehend in einem starken Abwärtstrend, aber gestorben ist es nie und auch der tatsächlich effektive Abwärtstrend hielt sich in Grenzen. Klar, mittlerweile schwärmt jeder zweite Entwickler von Kotlin oder C#, aber welcher davon hat seine guten Vorsätze denn tatsächlich umgesetzt am nächsten Wochenende mal Kotlin zu lernen?
Trotzdem ein weiterer Tritt gegen ein fast totes Pferd.
Java ist immer noch eine der am meist genutzten Sprachen. Und wenn man das JDK dazuzählt gibt es nichts, was größer ist.
Ich glaube, die meiste Nutzung von Java geschieht klar in Backendsystemen. Frontend verabschiedet sich gefühlt immer mehr, weil Fatclients durch Apps abgelöst werden. Da gibt es einfach bessere Technologien um systemübergreifende Applikationen zu Erzeugen.
JEE stirbt schon länger. Dabei empfand ich persönlich JEE immer als sehr angenehm. Mit fehlt ein wenig die vernünftige Testunterstützung. Ansonsten kann es mit Spring und ähnlichen Frameworks durchaus mithalten.
Das JDK ist für mich übrigens nicht Tot. Es gibt viele schöne neue Sprachen, die darauf laufen. Mit GraalVM laufen sogar nicht-JDK-Sprachen darauf. In Zeiten von Microservices ist man natürlich polyglotter aufgestellt.
Ach: ich bin übrigens zu Kotlin gewechselt und kann es nur jedem Java-Entwickler wärmstens empfehlen. Heutzutage gehört es meiner Meinung nach dazu, dass man sich auch sprachlich weiterentwickelt.
Die JVM oder das JDK!? Das ist ein wichtiger Punkt: Dass die JVM die Sprache Java „überleben“ wird, war für mich schon lange klar. Es gibt mit Graal und allem aus dem Dunstkreis von LLVM inzwischen zwar Konkurrenz. Aber eine bewährte, getestete, aus-spezifizierte VM, die für alle gängigen Plattformen verfügbar ist, mit Garbage Collector und einem Just-In-Time-Compiler, dessen Fähigkeiten an Magie grenzen, gibt es neben der JVM eben nicht.
(Vielleicht meintest du auch wirklich das JDK, im Sinne einer Library, die ebenso bewährt ist, schon viel bietet, und die i.a. recht einfach von „drübergestülpten“ Sprachen wie Scala, Groovy, Clojure, Kotlin & Co angesprochen werden kann. Auch das stimmt natürlich…)
Vielleicht gibt es noch „“„„Hoffnung““„“, die darin besteht, dass die ganzen Bachelor-N00bs heute nur noch high-level-Sprachen lernen, und irgendwann eine Firma feststellt: „Hey, wir haben hier noch Java-Code! Keiner kennt sich damit aus, und neu schreiben is nicht. Hiiiilfeee!“
Sorry, war wohl noch umnachtet. Ja, ich meinte natürlich die JVM.
Aber ja, das JDK ist schon sehr gut. Kotlin (und vermutlich auch andere Sprachen) zeigt erfolgreich, wie man dies jedoch noch um wunderbare Funktionen erweitern kann.
Und es gilt doch schon seit Jahren: Java ist das neue Cobol.