Programmiersprachen: Neue Funktionen für Java 9
Oracle hat eine erste Liste geplanter Neuerungen für die nächste Version 9 der Programmiersprache Java veröffentlicht. Es soll ein neues JSON-API sowie modularen Source Code geben.

Auf der OpenJDK-Webseite hat Oracle eine Liste von sechs JEPs veröffentlicht, die es in Java 9 umsetzen will. Es sind die ersten offiziellen Vorschläge für geplante Neuerungen in der nächsten Version von Java. Es soll Updates für die Prozess-APIs sowie eine schlankere Version des JSON-APIs geben.
Unter JEP 201 soll der Quellcode von Java modular organisiert werden. Die Reorganisation des Java-Quellcodes in einen modularen Aufbau gilt als notwendige Vorarbeit für das Projekt Jigsaw, vom dem aber in der jetzt veröffentlichten Liste vorgeschlagener JEPs nichts zu sehen ist. In der Beschreibung des JEP 201 heißt es, der Quellcode des JDK soll in Module aufgeteilt und gleichzeitig das Build-System angepasst und verbessert werden. Explizit wird auch erwähnt, dass JEP 201 kein modulares System in Java einführen will. Außerdem werde sich die Struktur der JRE- und JDK-Binary-Images dadurch nicht ändern. Die Modularisierung von Java unter dem Namen Projekt Jigsaw war schon für Version 7 geplant, wurde aber auch in Java 8 nicht umgesetzt. Sie soll vor allem für schlankere Java-Anwendungen und die dazugehörigen Runtimes sorgen.
Neue Quellcode-Struktur
Die Modularisierung nach JEP 201 soll auch die Codepflege vereinfachen. Geplant ist beispielsweise im Native-Ordner jeweils ein Verzeichnis für die C- beziehungsweise C++-Header-Dateien und eines für die Konfigurationsdateien, die später von Anwendern angepasst werden sollen. C- und C++-Quellcode wird in einem $LIBRARY-Ordner untergebracht, dessen Name jeweils die zu verlinkende Java-Bibliothek trägt, etwa Libjava oder Libawt. Nebenbei wird das Verzeichnis solaris in unix umbenannt.
Der Smart Java Compiler sjavac soll so weit aktualisiert werden, dass er die benötigte Stabilität und Portabilität erhält. Er soll dann als Wrapper für javac eingesetzt werden können. Neue Funktionen sind aber nicht geplant. Der Compiler könne zwar schneller kompilieren und unterstütze inkrementelle Builds, allerdings sei der Code des Smart Java Compilers mangels Stabilität und Qualität noch weit von einem sinnvollen Einsatz entfernt, heißt es in dem Änderungsvorschlag JEP 199. Neben einem schlankeren API für JSON nach RFC 7159, der wesentliche Funktionen der Javascript Object Notation bereitstellen will, soll es auch einen Client für HTTP 2.0 und Websockets geben, der langfristig HttpURLConnection ersetzen soll.
Zugriff auf die Prozessstruktur
Die Process-APIs sollen erweitert und so die Interaktion mit Betriebssystemen verbessert werden. Künftig sollen etwa Java-Anwendungen die Prozess-ID und -Namen einer Java Virtual Machine auslesen und somit leichter mit dessen Prozessstruktur im jeweiligen Betriebssystem interagieren können.
Mit JEP 143 wollen die Java-Entwickler nochmals die Prozess- und Thread-Sperren (Contended Locking) überarbeiten und so auch die Leistung von Java Monitors erhöhen. Damit verbunden sind die unter JEP 197 vorgeschlagenen Änderungen namens Segmented Code Cache. Die Änderungen sollen für mehr Leistung und weniger Fragmentierung bei der Kompilierung von Java-Code sorgen. Der Code kann in verschiedene Abschnitte eingeteilt werden, etwa wenn er in Teilen keine Methoden enthält. Diese Änderungen können als Basis für zukünftige Erweiterungen dienen, etwa feinere Sperren oder das Aufteilen von Code und Metadaten.
Noch gibt es keinen Veröffentlichungstermin. Läuft alles wie geplant, könnte Java 9 2016 erscheinen.
Oder nutzen Sie das Golem-pur-Angebot
und lesen Golem.de
- ohne Werbung
- mit ausgeschaltetem Javascript
- mit RSS-Volltext-Feed
(Ich schreibe jetzt mal ITLV anstelle von Implicitly Typed Local) Und was meinst du wie...
Was ist denn für dich bitte die Standard-JRE? Da kommt es sicher auf die Sichtweise an...
Nach dem Motto dürfte Nichts weiter entwickelt werden. O_o