Developer

Aktuelle Themen

Java 9 kommt mit Jigsaw

Nachdem Jigsaw in der ersten Abstimmungsrunde abgelehnt worden war, wurde das Modul-System für Java jetzt im zweiten Anlauf abgesegnet. Fast alle Abstimmenden Parteien stimmten dafür, nur Redhat enthielt sich seiner Stimme. Gegenstimmen gab es damit diesmal keine mehr.

Abstimmungsergebnis

Nach der Ablehnung am 24. April führte die Expertengruppe mehrere Abstimmungsrunden durch, um zu einem Konsens bezüglich der noch offenen Punkte zu kommen. Einer davon war eine zu restriktive Handhabung der Reflection-API über Modulgrenzen hinweg. Der angestrebte Konsens konnte nun offensichtlich erreicht werden.

Die Ablehnung hatte mitunter eine Verschiebung des Releasetermins von Java 9 zur Folge. Statt Ende Juli wird Java 9 nun erst am 21. September 2017 erscheinen.

Künftig wird es für die Java-Plattform feste Release-Termine geben. Releases sollen demnach alle bis zum Termin fertig gestellten Features beinhalten, und nicht wie in der Vergangenheit  aufgrund von Verspätungen großer Funktionalitäten, wie Lambdas in Java 8 oder eben Jigsaw, verzögert werden. Dies bedeutet für die Zukunft mehr Releases, sowie häufigere Veröffentlichungen von kleinen Verbesserungen von Java.

Abstimmung: Java Platform Module System – Public Review Reconsideration Ballot

Jigsaw-Entwurf von Expertengruppe abgelehnt

Bis zum 8. Mai hatten die Mitglieder der zuständigen Expertengruppe Zeit, um über das Modularisierungs-System der Java-Plattform abzustimmen. Die Entscheidung fiel gegen den Entwurf. Nicht lange vor dem geplanten Erscheinungsdatum von Java 9 erleidet damit das unter JSR 376 laufende Modularisierungsprojekt, besser bekannt unter dem Namen „Jigsaw“, einen erneuten Rückschlag. Jigsaw sollte bereits Teil von Java 8 sein, wurde aber wegen signifikanten ungelösten technischen Herausforderungen auf Java 9 verschoben.

Mehr

Lazy Evaluation in Java mit Lambdas

Mit Java 8 haben die Lambdas Einzug in die Sprache gehalten. Am Beispiel von Logging zeigt dieser Artikel, wie man diese anonymen Funktionen für eine Lazy Evaluation einsetzen kann. Ziel ist es dabei, teure Operationen nur im Bedarfsfall auszuführen.

Mehr