Java8 gegen Java9

Java8 gegen Java9

Java 8 gegen Java 9: ​​Verbesserungen in Java 9, die Sie wissen müssen

Viele Entwickler wenden sich an Java, um Anwendungen zu erstellen. Wie wir alle wissen, ist Java unglaublich vielseitig, einfach zu bedienen, sicher, zuverlässig und vor allem plattformunabhängig. Java hat eine Anhängerschaft von mehr als 6.5 Millionen Entwickler weltweit. Daher ist es die perfekte Sprache, da auch Referenzmaterial reichlich vorhanden ist.

Trotzdem hat Java im Laufe der Jahre weiter gewachsen und entwickelt. Java wurde 1995 von Sun Microsystems erstellt und hat seine Zuverlässigkeit weiterhin nachgewiesen. Der vorherige Bau von Java, der seit dem 18. März 2014 verwendet wird, war Java SE 8. Als es enthüllt wurde, sagten Kritiker, es sei ein Kunstwerk, eine Veröffentlichung von Strömen von Veränderungen in APIs. Jetzt gibt es ein neues Kind auf dem Block. Frisch geprägter Java 9 ist endlich da. Die am 21. September 2017 vorgestellte Java SE 9 wird voraussichtlich die Art und Weise, wie wir Dinge tun, und der Art und Weise, wie Entwickler Anwendungen erstellen.

Aufgrund der unglaublichen Agilität und Vielseitigkeit von Java 8 schuf Unternehmen unglaubliche Lösungen für Branchen wie Gesundheitswesen, Fintech und andere wichtige Sektoren. Java 9 dagegen verspricht, darauf aufzubauen und den Entwicklern völlig neue Funktionen zu liefern.

Schauen wir uns also an, was in Java 9 neu ist.

Projektsäge

Dies ist einer der Höhepunkte von Java 9. Grundsätzlich ist Project Jigsaw der Name, der der Modularisierung von Java gegeben wurde. Als Puzzlernstücke kommen Stück für Stück zusammen, um ein größeres Bild zu erstellen, ebenso wie die Modularität von Java 9. Dies bedeutet, dass der Code aufgrund der zu ausgeführten Aufgaben oder Funktionen in Teile (Module) unterteilt ist. Dies ist ein großer Schritt nach vorne, da die Modularisierung nicht nur die Wiederverwendbarkeit von Code viel komfortabler macht, sondern auch das Management und Debuggen unkompliziert ist. Aus diesem Grund stellen wir fest, dass Entwickler es einfacher haben werden, Anwendungen mit Java 9 zu erstellen als bei anderen vorherigen Builds.

Ein weiterer Vorteil der Modularisierung besteht darin, dass Entwickler jetzt leichte, skalierbare Anwendungen erstellen können. Besonders mit dem Internet der Dinge, die weiter wachsen, werden wir mehr solche Apps finden, die in Java geschrieben wurden.

JEP 222: Jshell: Die Java -Hülle

Java 9 verfügt. Nach seiner Entwicklungsphase im Project Kulia wurde diese Funktion endlich für die Öffentlichkeit veröffentlicht. Diese neue Funktion ist ein interaktives Tool, mit dem Ausdrücke, Aussagen und Deklarationen in Java getestet werden. Das Hauptziel der JSHELL -API und des Tools besteht darin, dem Entwickler die Möglichkeit zu geben, die oben genannten Funktionen im Shell -Zustand zu testen. Dies ist in erster Linie eine schnelle Codierung und Untersuchung, wobei die Ausdrücke und Aussagen nicht in einer Methode und Methoden in einer Klasse liegen müssen. Auf diese Weise kann ein Entwickler schnell Codestücke analysieren und feststellen, ob er den gewünschten Effekt erzielt wird.

Das JSHELL -Tool verfügt über eine Befehlszeilenschnittstelle mit den folgenden Funktionen:

  • Konfigurierbare vordefinierte Definition und Importe.
  • Eine Geschichte mit Bearbeitungsfähigkeiten
  • Automatische Zugabe der erforderlichen terminalen Semikolons

Compiler -Verbesserungen

Um sicherzustellen, dass die Anwendungen schneller ausgeführt werden, hat Java 9 eine neue Technologie eingeleitet. Diese Technologie ermöglicht es, dass Java -Kurse in ihren experimentellen Phasen in nativen Code zusammengestellt werden, noch bevor sie in den virtuellen Maschinen gestartet wird. Die Möglichkeiten davon sind endlos. Die sofortigere Nutzung dieser Technologie verbessert jedoch die Startzeit für große und kleine Apps ohne eine Abschreckung in der Spitzenleistung.

Rückblickend verwendet Java 8 Just-in-Time-Compiler (JIT-Time). Diese Compiler sind schnell, nehmen sich aber etwas mehr Zeit, bevor Sie sich aufwärmen. Dies kann für kleinere Programme oder Apps belanglos sein, da es nicht viel Code zum Kompilieren gibt. Für die größeren Apps ist die Erzählung jedoch ganz anders. Das Aufwärmen, ein Just-in-Time-Compiler, bedeutet, dass einige Methoden nicht kompiliert werden, wodurch die Leistung der App geschwächt wird.

Die zweite Phase der Bereitstellung von Smart Compilation ist die Verbesserung der Tragbarkeit und Stabilität des Javac -Tools. Durch die Verbesserung dieses Tools können Sie direkt im JVM (Java Virtual Machine) als Standardeinstellung verwendet werden. Abgesehen davon wurde das Tool so verallgemeinert, dass Entwickler es auch außerhalb der JDK -Umgebung verwenden können. Für Entwickler ist dies eine große Sache, da Java in größeren Projekten verwendet werden kann, die leicht untergebracht werden können, ohne sich um die Kompatibilität zu sorgen. Ein weiteres entscheidendes Update ist die Rückwärtskompatibilität des Javac -Compilers, dessen alleinige Funktion darin besteht, Apps und Programme zu kompilieren, die mit Java 9 erstellt wurden, um auch auf älteren Java -Versionen zu laufen.

Bessere JavaScript -Unterstützung

Da JavaScript für viele weiterhin an Dynamik gewinnt und ein Favorit wird, hat JDK 9 es ermöglicht, JavaScript in Java -Apps einzubetten. All dies geschieht mit Hilfe von Project Nashorn, dessen Hauptziel darin bestand, eine hohe Leistung zu schaffen, aber leichte JavaScript -Laufzeit in Java. Dies wurde natürlich geliefert, als sie eine JavaScript -Engine in JDK Version 8 zur Verfügung stellten. Jetzt in Version 9 gibt es eine Parser -API, deren Ziel die ECMascript -Syntax -Reihenfolge des Nashorns ist. Diese API ermöglicht die Aktivierung der Analyse des ECMascript-Codes nach serverseitigen Frameworks und IDEs, ohne sich auf die internen Implementierungsklassen von Projektnashorn verlassen zu müssen.

G1 als Müllsammler

Im Gegensatz zur landläufigen Meinung hat Java nicht einen, sondern vier Müllsammler. Diese Müllsammler sind nicht gleich und als solche, bedeutete die Auswahl der falschen Leistung in der Anwendung, Leistungsprobleme zu haben. In Java 8 war der Standard -Müllsammler der parallele / Durchsatz -Sammler. Dieser Müllsammler wurde durch seinen Vorgänger The Garbage-First Collector (G1) ersetzt. Da der G1-Kollektor so konzipiert war.

API -Updates

In dieser neuen Version des Java Development Kit wurden mehrere Updates an die APIs gemacht, und wir werden die bemerkenswertesten diskutieren.

Das allererste ist die Java 9 -Parallelitäts -Updates mit Java.Util.gleichzeitig.Fluss und Vervollständigung. Ziel, das Problem zu lösen, das Rückdruck ist. Flow ist die Implementierung der reaktiven Ströme -API durch Java, die im Wesentlichen darauf abzielt, das Backdruckproblem zu lösen. Rückdruck ist der Aufbau von Daten, die auftreten, wenn die Rate der eingehenden Anforderungen größer ist als die Verarbeitungsfähigkeit der Anwendung. Auf lange Sicht ist dies ein Problem, da die Anwendung einen Puffer unverarbeiteter Daten hat. Dieses Update bedeutet eine bessere Handhabung von Zeitüberschreitungen, Verzögerungen und Unterklassen.

Sicherheit ist Teil der Kernidentität von Java. Daher Unterstützung für den neu zugelassenen HTTP 2.0 RFC ist ein großes Plus. Http 2.0 RFC wurde auf dem Spdy -Algorithmus von Google aufgebaut, der bereits begonnen hat, Früchte mit Geschwindigkeitsverbesserungen von 11 zu tragen.81% bis 47.7% aus dem vorherigen HTTP 1.1. Diese Client -API ist ein Upgrade auf die Kern -HTTP -Protokolle und die HttpurlConnection.

Code Caching war schon immer eine Strategie, mit der Anwendungen im Laufe der Jahre schneller und reibungsloser wurden. Es ist jedoch nicht ohne Grenzen, und dies ist nicht unbemerkt geblieben. Ein Update in Java 9 zeigt deutlich JDK 9, die zwischengespeicherte Codes in kleinere Teile teilen und so die Gesamtleistung verbessern. JDK 9 verwendet spezielle Iteratoren, um Nicht-Methoden-Code zu überspringen. Profile, gemeinnützige und nicht-Methoden-Code zu trennen; und Verbesserung einiger Benchmarks für die Ausführungszeit.

Vorteile von Java 9

Für viele Geschäftsinhaber gibt es keinen Unterschied zwischen Java 8 und 9. Für den Entwickler gibt es jedoch eine Welt des Unterschieds. Dies sind die Vorteile, die Java SE 9 gegenüber seinen Vorgängern hat.

  • Die Entwicklungsgeschwindigkeit wird dank des Systemsystems, die nicht nur leichter zu verwalten und zu debuggen, erheblich erhöht werden, sondern auch wiederverwendbar, was bedeutet, dass Sie den gesamten Code nicht von Grund auf neu schreiben müssen.
  • Verbesserung der Effektivität der Ressourcen für Anwendungen aus der Modularisierung und das Erhalten von Ressourcen, die einfacher sind, da Entwickler nur die erforderlichen Module anstelle von ganz JRE einnehmen.
  • Echtzeitanalyse von Codeausschnitten wie Mikro-Benchmarks, mit der die Leistung kleiner Codestücken untersucht werden.

Quellen

http: // openjdk.Java.net/jeps/251
https: // www.romexsoft.com/blog/java-8-vs-java-9/
https: // blogs.Orakel.com/java/featurts in-Java-8-9-9
https: // dzone.com/articles/5-features-in-Java-9-dh--Willen-Change-How-you-deve

https: // linuxHint.com/eclipse-java-tutorial/