Recentemente Java ha cambiato il ritmo delle versioni. In precedenza, ci sarebbero voluti anni per elaborare una nuova versione Java. Ma Java 10 è stato rilasciato nel mondo solo sei mesi dopo Java 9. Sembra che Oracle cercherà di ottenere le nuove versioni Java agli sviluppatori il più presto possibile. Rilascio più veloce delle versioni Java significa che gli sviluppatori avranno accesso a nuove funzionalità prima. D'altra parte, l'adozione rapida degli sviluppatori porterà a una maggiore popolarità Java. Quindi, è una vittoria per entrambe le parti.
Cosa c'è di nuovo?
Ecco alcune delle importanti caratteristiche di Java 10:
Inferenza locale di tipo variabile: Java richiede variabili tipizzate esplicitamente per garantire la "sicurezza del tipo". È usato come principio di progettazione per ridurre al minimo gli errori di runtime. Tuttavia, le variabili di digitazione esplicita per iteratori in loop e i valori intermedi rendono la programmazione di Java che richiede tempo e soggetti a errori. Con l'inferenza di tipo variabile locale, il compilatore Java sarà in grado di dedurre il tipo di variabile dal contesto. Dovrebbe accelerare la programmazione in Java.
Parallele Full GC per Garbage Collector: A volte la collezione di immondizia ottiene la priorità sull'esecuzione del programma e l'esecuzione del programma è congelata per dare l'accesso esclusivo della raccolta dei rifiuti a JVM. Questo è noto come "Collezione Garbage Full". In Java 10, questo processo è stato ottimizzato per eseguire thread paralleli su più processori. Rende il processo più efficiente.
Condivisione dei dati della classe dell'applicazione: Ottimizzerà il tempo di avvio e l'impronta. Se un barattolo non cambia, anche i dati di classe non cambiano. Una volta creati i dati di classe, può essere messo in un archivio e riutilizzato in più JVM.
Compilatore JIT sperimentale: I compilatori just-in-time (JIT) aiutano gli sviluppatori a scrivere applicazioni efficienti. Ma il compilatore JIT di Java è stato scritto in C++. Il nuovo JIT è basato su Java. Renderà più facile per gli sviluppatori mantenere il codice.
Consapevolezza Docker: Java 10 JVM saprà se è in esecuzione in un contenitore Docker. Invece di parlare direttamente con il sistema operativo, JVM otterrà le informazioni dal contenitore Docker.
Consolidare la foresta JDK in un singolo repository: Varie foreste JDK sono combinate in un singolo repository. Migliora lo sviluppo delle pulizie e delle linee.
Allocazione del heap su dispositivi di memoria alternativi: Hotspot VM sarà in grado di allocare un umore dell'oggetto Java su un dispositivo di memoria definito dall'utente alternativo.
Certificati di root: JDK 10 è stato sviluppato con la cooperazione di OpenJDK. Fornirà un set predefinito di autorità di certificazione root.
Progetti futuri
Ecco alcune considerazioni future per Java:
Conclusione
I nuovi cicli di rilascio frenetico significano che le funzionalità potrebbero essere spinte alla versione successiva più spesso di prima. Ma nel complesso, le funzionalità JDK 10 dovrebbero essere ottime per tutti.