Suche
Unser Experten-Check zu Java 10 – Teil 2

11 Expertenmeinungen zu Java 10: Die größten Missverständnisse und austauschbare Features

Gabriela Motroc
Jaxenter

Java 10 ist und bleibt umstritten. Passt die Versionsnummer? Ist der Release-Zyklus zu kurz? Unsere Experten geben Antworten dazu, was ihrer Meinung nach die größten Fehleinschätzungen zu Java 10 sind und was sie lieber bei diesem als einem späteren Release schon gesehen hätten.

Im ersten Teil unserer Interviewserie haben wir gefragt, was das Besondere an Java 10 ist und was unseren Experten am besten an der neuen Version gefällt. Dieses Mal wird es kritischer. Wir haben nachgefragt, was mit Java 10 nicht stimmt. Wird das Release stellenweise falsch eingeschätzt? Und fehlt der neuen Sprachversion vielleicht etwas, das schon längst rein gemusst hätte? Hier sind die Antworten im zweiten Teil unseres Experten-Checks.

Was ist die größte Fehleinschätzung in Bezug auf Java 10?

Die Java-Experten

Donald Smith ist Senior Director des Produktmanagements bei Oracle.

Dr. Wayne Citrin ist CTO und Co-Founder von JNBridge, LLC.

Greg Luck ist CEO und CTO von Hazelcast.

Lukas Eder ist Gründer und Leiter der Forschung und Entwicklung bei der Data Geekery GmbH, dem Unternehmen hinter jOOQ und Java-Champion.

Marcus Biel ist Software-Handwerker, JCP-Mitglied und CleanCode-Prediger.

Markus Eisele ist Leiter der Developer Advocacy bei Lightbend und Java-Champion.

Nicolai Parlog ist Entwickler (vor allem Java), Blogger bei CodeFX, Autor, YouTuber und Trainer.

Richard Gall ist Communications Manager bei Packt.

Simon Ritter ist der Vize-CTO von Azul Systems.

Trisha Gee ist Developer Advocate bei JetBrains, ein Key-Member der Londoner Java Community und Java-Champion.

David Heffelfinger ist Java-Champion und Jakarta EE Consultant und Ausbilder.

Wayne Citrin: Dass es sich dabei um ein Major Release handelt. Für fast alle anderen Softwareprodukte wäre so ein Upgrade ein Minor oder Point Release. Warum konnten wir es nicht einfach Java 9.1 nennen?

Simon Ritter: Ich denke, dass das JDK 10 nur als Zwischenversion betrachtet wird und nicht als vollständiges Release wahrgenommen wird. Das ist falsch, denn auch das JDK 10 hat den gesamten Java-Specification-Request-Prozess (JSR) durchlaufen. Erst vor Kurzem habe ich in meinem Blog über die 109 neuen Features in JDK geschrieben, so leicht ist es also nicht.

Richard Gall: Da bin ich mir nicht sicher, aber bei Java 9 gab es wesentlich mehr Aufregung, als es bei Version 10 der Fall ist.

Trisha Gee: Ich bin mir nicht so sicher darüber, dass es eine Fehleinschätzung sein soll, sondern eher eine fehlerhafte Wahrnehmung. Es ist möglich, dass viele Leute nicht sehen können, dass sich mit Java 9 (in Folge auch Java 10) die Support Roadmap von Oracle für die Java-Versionen geändert hat. Nur bestimmte Versionen werden langfristig unterstützt (z.B. Java 8, Java 11), die dazwischen liegenden Versionen werden von Oracle nicht langfristig unterstützt. Stattdessen werden wir ermutigt, zur nächsten Version zu wechseln.

David Heffelfinger: Von Anfang an war eine neue Java-Version immer ein großes Ereignis mit vielen neuen Funktionen. Dieses Mal, da Java gerade erst auf eine sechsmonatige Release-Kadenz umgestellt wurde, hat diese aktualisierte Java-Version nur wenige neue Funktionen. Einige werden – basierend auf der Aufregung, die frühere Java-Versionen immer erzeugt haben – viele neue Funktionen erwarten, wobei Java 10 in Wirklichkeit ein ziemlich kleines Update von Java 9 ist.

Lukas Eder: Mir fällt keine ein.

Markus Eisele: Ich denke, dass viele Entwickler sehnsüchtig auf Project Amber und Project Valhalla warten. Die Veröffentlichung einer neuen Hauptversion ist bei vielen noch mit sehr großen Änderungen und Features verbunden. Das ist in Bezug auf Java 10 allerdings offenkundig nicht der Fall.

Nicolai Parlog: Dass der Schritt von Java 9 nach Java 10 vergleichbar mit dem von 8 auf 9 wäre. Das ist er nicht, nicht einmal annähernd. Mit Java 9 wurden haufenweise Dinge verändert, besonders unter der Haube. Java 9 war mit Abstand eines der anspruchsvollsten Releases seit langer Zeit, vielleicht sogar das anspruchsvollste überhaupt. Im Vergleich dazu ist das Update auf Java 10 wie das von 9.0.1 auf 9.0.4.
Die einzige echte Hürde ist, dass das Bytecode-Level erhöht wurde (was nun mit jedem neuen Release geschehen wird), was für einige Bytecode-Analysetools (wie ASM) und die darauf basierenden und davon abhängigen Tools problematisch werden könnte.

Donald Smith: Nach fast 20 Jahren und neun Hauptversionen ist das Java-Ökosystem an „Hauptversionen“ gewöhnt, an die man sich eigentlich nur schwer gewöhnen kann, vor allem wegen der enormen Menge an Funktionen, die auf einmal eingeführt wurden. Java 10 markiert den Beginn einer neuen Ära, in der der Übergang von Java 9 zu Java 10 fast so einfach sein sollte wie der Übergang von 8u20 zu 8u40. Der neue Releasezyklus erlaubt es uns, neue Funktionen in einem vernünftigeren Tempo einzuführen und uns auf das zu konzentrieren, was die Community wirklich will.

Greg Luck: Dass es sich um ein produktives Java-Release handelt.

Wenn du irgendein Feature in dieser Version durch ein anderes ersetzen könntest, was wäre es?

Wayne Citrin: Ich finde, dass keins der neuen Features schlecht oder falsch ist. Meiner Meinung nach gibt es nichts, was ich besonders ablehne oder ersetzen wollen würde.

Simon Ritter: Ich glaube nicht, dass es etwas gibt, das ich gerne ändern würde. Mein persönliches Gefühl ist, dass Java eine großartige Plattform ist. Ich mag die Art und Weise, wie Leute wie Brian Goetz und Mark Reinhold sorgfältig neue Features hinzufügen, ohne massive Änderungen vorzunehmen, die dafür sorgen würden, dass sich Java nicht mehr wie Java anfühlt.

Richard Gall: Nichts. Es gibt wichtige Features in der Entwicklung, wie Fibers, Value-Types und einige andere. Das wir jetzt var haben und einige veraltete Klassen entfernt wurden, ist nur ein kleiner Schritt auf dem Java-Weg.

Trisha Gee: Ich bin mir nicht so sicher, ob ich etwas ersetzen würde. Es gibt Features, die sich nicht direkt auf die Art und Weise auswirken, wie ich Code schreibe (wie den JDK Forest in ein einzelnes Repository zu konsolidieren), aber ich gehe davon aus, dass solche Säuberungsaktionen dabei helfen können, dass ein Team eine Sprache schneller oder leichter (vielleicht auch beides!) entwickelt. Und das ist ja auch für mich als Java-Entwicklerin ein Vorteil.

David Heffelfinger: Die meisten der neuen Features von Java 10 sind intern, z.B. was die Funktionsweise des JDKs angeht. Vielleicht könnte eines dieser „hinter den Kulissen“-Features durch ein benutzerfreundliches Feature ersetzt worden sein – obwohl ich keine konkreten Vorschläge oder Beispiele habe.

Lukas Eder: Naja, ich hätte gerne die ganzen aufregenden Features, die mit Project Amber und Project Valhalla kommen sollen. Aber bis diese fertig sind, wird es noch etwas dauern.

Markus Eisele: Ich wüsste keines.

Nicolai Parlog: Ich freue mich sehr auf die Spezialisierung primitiver Datentypen (List<int>) und Value Types, aber sie sind noch nicht fertiggestellt. In der Zwischenzeit wird uns sicher Project Amber beschäftigen. Natürlich wird auch das erst dann veröffentlicht werden, wenn es wirklich fertig ist, und ich würde keines der Features früher haben wollen, als zum Zeitpunkt ihrer Fertigstellung. Ich bin nicht so für Traumschlößer, sondern betrachte das Ganze lieber realistisch.

Marcus Biel: Ich denke es wäre wichtiger, Features zu entfernen und einige Entscheidungen der Vergangenheit zu revidieren, als neue Features zu implementieren. Wenn ich mich allerdings für ein neues Feature entscheiden muss, dann vermutlich für Pattern Matching

Donald Smith: Wiederum werde ich meinen inneren Dr. Deprecator kanalisieren und sagen: „Ich wünschte, wir hätten den Footprint des JDK reduzieren können, indem wir die Java EE- und CORBA-Module von Java 10 getrennt hätten. Aber leider ist er stattdessen auf Java 11 ausgerichtet.“

Greg Luck: Werttypen (Project Valhalla) und unveränderliche Arrays, eine Vielzahl von default-Methoden im Collection API und generisches enum.
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Im dritten Teil unserer fünfteiligen Interviewserie verraten unsere Experten, wann sie voraussichtlich auf Java 10 migrieren werden. Außerdem verraten sie uns, ob sie überhaupt schon Java 9 nutzen und wenn ja, auf welche Probleme sie bei der Migration gestoßen sind.

Geschrieben von
Gabriela Motroc
Gabriela Motroc
Gabriela Motroc ist Online-Redakteurin für JAXenter.com. Vor S&S Media studierte Sie International Communication Management an der The Hague University of Applied Sciences.
Kommentare

Hinterlasse einen Kommentar

1 Kommentar auf "11 Expertenmeinungen zu Java 10: Die größten Missverständnisse und austauschbare Features"

avatar
400
  Subscribe  
Benachrichtige mich zu:
Studer
Gast
Was etwas unter geht: JDK 10 wird das JDK sein, was am wenigsten in der Produktion zum Einsatz kommen wird. Der Grund ist die Toolchain. Viele Entwickertools arbeiten auf Major Releases hin und sind sehr wenig bis gar nicht in der Lage, ihre Tools für einen neuen Major Release im Voraus irgendwie kompatibel zu halten. So ist der offizielle Eclipse Release nach wie vor nicht JDK10 Kompatibel, es sei denn man will mit Beta-Komponenten unterwegs sein. Netbeans ist noch in der Incubation von Apache, und deshalb gibt es da nicht mal stabile JDK 9 Unterstützung mehr. Selbst Intelij IDEA ist… Read more »