(K)ein Schwanengesang auf Java - Teil 2

10 Antworten aus der Community: Ist die Verschiebung von Java 9 gerechtfertigt?

Gabriela Motroc

© Shutterstock / Elena legkodukh

Im Java-Ökosystem wird es niemals langweilig. Zuerst stimmt das JCP-Experten-Komitee gegen die Annahme des Java-9-Modulsystems Jigsaw. Dann in der zweiten Abstimmung entscheiden sich die Parteien fast einstimmig dafür. Wir haben 10 Java-Experten gefragt, ob die dadurch erzwungene Verschiebung des Java-9-Release für sie eine gute oder schlechte Sache bedeutet.

(K)ein Schwanengesang auf Java – Teil 2: Projekt Jigsaw und Java 9

Was ist los in der Java-Welt? Jede Menge! Java 9 kommt im September, Java EE 8 steht in den Startlöchern und 10 Java-Experten geben uns wertvolle Einblicke in die Zukunft der Programmiersprache. In dieser Interviewserie besprechen wir, wo wir mit Java 9 stehen, welchen Weg Java 10 einschlagen wird und welche Technologien Javas Führungsposition gefährden könnten.

Top 20 Java Influencers

Gefragt haben wir führende Experten der Szene, die auf Twitter besonders aktiv sind. Auf der Basis der Social-Authority-Metriken MozRank and Klout ergibt sich folgende Top 20 der Social Influencer in Java 2017:

 

Komplette Liste unter: www.jaxlondon.com/blog

Haben wir uns im ersten Teil der Reihe mit der Frage beschäftigt, inwiefern der Trend hin zu JavaScript die Führungsposition Javas gefährden könnte, wollen wir uns dieses Mal ganz dem kommenden Java 9 widmen.

10 Antworten: Was hältst du von der Ablehnung des Jigsaw-Entwurfs in der ersten JCP EC-Abstimmung und der dadurch erzwungenen Verschiebung von Java 9? *

* Zwischenzeitlich wurde der JSR 376 vom JCP-Expertenkomitee angenommen.

Die Java Influencer

Markus Eisele ist Head of Developer Advocacy bei Lightbend und Java Champion.

Marcus Biel ist Software Craftsman, JCP-Mitglied und CleanCode Evangelist.

Lukas Eder ist Gründer der Data Geekery GmbH, Erfinder von jOOQ und Java Champion.

Trisha Gee ist Developer Advocate bei JetBrains, Mitglied der London Java Community und Java Champion.

Vlad Mihalcea ist CEO bei Hypersistence und Autor des Buches High-Performance Java Persistence.

Jake Wharton ist Android-Entwickler bei Square Inc.

Thorsten Heller ist CEO des Unternehmens greenbird Integration Technology.

Baruch Sadogursky ist Developer Advocate bei JFrog.

Quentin Adam ist CEO von Clever Cloud.

Bruno Borges ist Principal Product Manager bei Oracle und verantwortlich für das Developer Engagement der Oracle Cloud Platform und Java-Technologien.

Markus Eisele: Ich habe nicht erwartet, dass Java 9 überhaupt noch in diesem Jahr erscheint. Das Exekutiv-Komitee hat deutlich ausgedrückt, dass die Vorteile eines modularisierten JDK ganz klar in einer Sache liegen: nämlich in der JVM selbst. Jigsaw bedeutet eine große Last für Framework-Entwickler und wird sehr wahrscheinlich einen großen Einfluss darauf haben, wie wir zukünftig Anwendungen bauen werden.

Jigsaw bedeutet eine große Last für Framework-Entwickler.

Man könnte jetzt sagen, dass ein schlechtes Modulsystem besser ist als gar keins. Aber ich glaube, dass ohne die letzten Anpassungen und die Klarstellungen, die vom Exekutiv-Komitee eingefordert wurden, niemand Java 9 genutzt hätte. Außer natürlich Oracle.

Marcus Biel: Das ist sehr schwer zu sagen. Jigsaw ist eine große Chance, und es wird ein wenig weh tun. Aber langfristig werden wir davon profitieren. Ich denke, es lohnt sich, noch ein wenig zu warten, bis der Umstieg so schmerzlos wie möglich vonstatten gehen kann.

Lukas Eder: Ich bin mir sicher, dass es für Oracle und andere JVM- oder Java-EE-Anbieter wichtige Gründe für dieses signifikante Projekt gibt. Mich persönlich langweilt der JSR 376 aber eher. Jigsaw wird meine Arbeit in näherer Zukunft nicht sonderlich beeinflussen. Ich bin eher neugierig darauf, welche Features in Java 10 kommen werden!

Trisha Gee: Ich vertrete ja JetBrains im JCP Exekutiv-Komitee und kenne das Problem deshalb aus nächster Nähe! Persönlich war ich hin und her gerissen über die Entscheidung. Einerseits will ich Java 9 so früh wie möglich veröffentlicht sehen – gefühlt warten wir schon eine Ewigkeit darauf. Doch als Entwickler sollten wir verstehen, dass es eben seine Zeit braucht, bis die Dinge richtig umgesetzt werden können. Es ist viel besser, Feedback von den Anwendern zu erhalten (beispielsweise vom Exekutiv-Komitee und den Entwickler-Communities, die es repräsentiert) und auf dieser Basis Veränderungen vorzunehmen, als eine Lösung zu veröffentlichen, die einigen Teilen der Community nicht passt.

Gefühlt warten wir auf Java 9 schon eine Ewigkeit.

Es ist ja gerade die Tatsache, dass Java reif und stabil ist und sich verpflichtet hat, existierende Anwendungen nicht zu brechen, die die Sprache für viele User und insbesondere die großen Unternehmen so attraktiv macht. Die Kehrseite der Medaille ist dann allerdings, dass es lange dauert, um größere Veränderungen an der Plattform durchzusetzen, weil man es der ganzen Community recht machen muss.

Vlad Mihalcea: Ich glaube, die Bedenken sind gerechtfertigt. Modularität ist ein sehr schwieriges Thema. Eine Lösung zu schnell zu forcieren, wird viele existierende Frameworks in Schwierigkeiten bringen. Nach den letzten Anpassungen an Jigsaw könnten meine Bedenken aber schon ausgeräumt worden sein.

Jake Wharton: Da der JSR in der zweiten Abstimmung nun akzeptiert worden ist, finde ich das erste negative Votum in Ordnung, um die Entscheidungen rund um die Module und Oracles Einstellung dazu nochmals auf den Prüfstand zu stellen. Man darf nicht vergessen, dass es in dieser Angelegenheit viele Parteien gibt, die hochgradig in die Plattform investiert haben und die bereits vorher Lösungen für das Modularitätsproblem gesucht bzw. angeboten haben.

Die Plattform sollte zwar nicht durch die Lösungen dieser Parteien aufgehalten werden. Aber man sollte ihre bisherige Arbeit auch nicht gänzlich ignorieren. Letztlich denke ich, dass wir durch die Anpassungen, die zwischen der ersten und der zweiten Abstimmung an Jigsaw vorgenommen wurden, ein besseres Ergebnis erzielt haben.

Thorsten Heller: Ich stimme vollkommen mit der Entscheidung des JCP Exekutiv-Komitees überein, gegen den JSR 376 zu stimmen. Es ergibt überhaupt keinen Sinn für mich, eine Spezifikation einzuführen, die so viele offene Punkte und Unklarheiten enthält. Insbesondere die Entfremdung von bzw. Co-Existenz mit OSGi ist einer der Punkte, die mir Sorgen bereiten. Java 9 nochmals zu verschieben und die Spezifikation zu überarbeiten war also eine kluge Entscheidung.

Baruch Sadogursky: Ich denke, das war eine gute Entscheidung. Die Gespräche, die nach der ersten negativen Abstimmung geführt wurden, sowie die Veränderungen die dann vorgenommen wurden, haben dem ganzen Projekt gut getan. Wir haben dieses „Warte mal, lass uns nochmal darüber reden“-Moment gebraucht.

Quentin Adam: In Java 9 kommen Breaking Changes. Viele Breaking Changes. Ich denke aber, all die harte Arbeit an der JVM ist abgeschlossen. Obwohl Jigsaw essentiell für die Zukunft der Java-Plattform in der nächsten Dekade sein wird, waren manche Entscheidungen zu hart für das Tool-Ökosystem von Java. Einige Werkzeuge brauchen noch etwas Zeit, um an ihrer Kompatibilität zu Java 9 zu arbeiten, damit sie von Anfang an gut mit der neuen Java-Version funktionieren.

Der Aufschub war gut, weil er es erlaubt hat, das Ökosystem besser auf Java 9 vorzubereiten.

Insofern war der Aufschub gut, weil er es erlaubt hat, das Ökosystem besser auf Java 9 vorzubereiten und den Umstieg für Java 9 User einfach und schnell zu machen. In der ersten Abstimmung mit „Nein“ zu stimmen war die einzige Möglichkeit, Oracle zum Verschieben des Releases zu zwingen – also war es eine gute Sache. Jetzt, da jeder mit dem Java 9 Release einverstanden ist, werden keine weiteren Verschiebungen mehr nötig sein, hoffentlich.

Wie dem auch sei, wir haben schon 8 Jahre lang auf Jigsaw gewartet – ein paar Wochen mehr machen den Kohl auch nicht fett.

Bruno Borges: Ich denke, die JCP-Expertengruppe hat das bestmögliche Ergebnis erzielt. Es bestand aus dem erwarteten Konsens aller Beteiligten. Letztlich haben alle, die in Java investiert haben, dadurch gewonnen. Java 9 bedeutet einen wichtigen Schritt nach vorne hin zu einer Java-Plattform, die innovative Konzepte der Software-Architektur wie Microservices ermöglicht, genauso wie moderne Mechanismen der Auslieferung von Software etwa mittels Container.

Die Modularisierung der Plattform wird dabei helfen, dass Java-Entwickler vom Cloud-Native-Ansatz der Software-Entwicklung profitieren. Jetzt können wir eine sehr viel kleinere JVM für winzige Microservices bekommen. Ich erinnere mich an einen Tweet von Mark Reinhold, dass eine minimale JRE 9 nur 15 MB groß ist. Das ist ein gewaltiger Fortschritt!

So geht’s weiter

Im dritten Teil der Reihe geht es weiter um die Relevanz von Java 9 und die Frage, ob der durchschnittliche Java-Entwickler ein modulares Ökosystem überhaupt braucht.

Lesen Sie auch Teil 1 der Serie:

(K)ein Schwanengesang auf Java: Heißt Javas Schicksal JavaScript?

W-JAX
Mike Wiesner

Data- und Event-driven Microservices mit Apache Kafka

mit Mike Wiesner (MHP – A Porsche Company)

Niko Köbler

Digitization Solutions – a new Breed of Software

with Uwe Friedrichsen (codecentric AG)

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

Schreibe einen Kommentar

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