Java 10 - Descripción general
Java 10 es una versión importante en la cadencia de lanzamiento de Java y se lanzó el 10 de marzo de 2018. Con Java 10, Oracle ha cambiado la cadencia de lanzamiento de Java a un nuevo modelo, una cadencia de lanzamiento de 6 meses y un modelo LTS para los productos Oracle Java SE. El modelo LTS significa modelo de soporte a largo plazo.
Desde Java 10 en adelante, Oracle lanza una nueva versión de Java cada 6 meses donde cada versión contiene una o dos características principales. Oracle utiliza un concepto de tren de lanzamiento. Cada tren de lanzamiento está programado para 6 meses. Las funciones que se desarrollan dentro de esta línea de tiempo se envían en el lanzamiento; de lo contrario, las funciones se mueven al siguiente tren de lanzamiento.
Oracle JDK frente a OpenJDK
La mayoría de los archivos binarios de Oracle JDK son propiedad y tienen licencia de Oracle y tienen múltiples restricciones de redistribución. Mientras que OpenJDK es más amigable para la comunidad de desarrolladores. Desde Java 10 en adelante, Oracle ha decidido promover OpenJDK como JDK principal para facilitar el desarrollo de Java basado en la comunidad. Oracle seguirá produciendo sus propios JDK, pero los lanzará después de 3 años y los denominará versión LTS. Por lo tanto, los binarios de OpenJDK se publicarán cada seis meses.
OpenJDK es compatible con la nube y los contenedores, ya que puede distribuirse libremente como parte del contenedor. Por lo tanto, el movimiento de Oracle para promover OpenJDK hace que Java sea más amigable con el desarrollo y la implementación de contenedores o la nube.
Java 9 y Java 10 no son versiones LTS. La versión Java 11 es una versión LTS.
Nuevas funciones
Las siguientes son las principales características nuevas que se presentan en Java 10.
-
JEP 286 − Inferencia de tipo de variable local
-
JEP 322 − Versión de versión basada en el tiempo
-
JEP 304 − Interfaz de recolección de basura
-
JE 307 − GC completo en paralelo para G1
-
JEP 316 − Asignación de montón en dispositivos de memoria alternativos
-
JEP 296 − Consolidar el bosque JDK en un único repositorio
-
JEP 310 − Intercambio de datos de clase de aplicación
-
JEP 314 − Extensiones adicionales de etiquetas de idioma Unicode
-
JEP 319 − Certificados raíz
-
JEP 317 − Compilador JIT experimental basado en Java
-
JEP 312 − Apretones de manos de subprocesos locales
-
JEP 313 − Eliminar la herramienta de generación de encabezados nativos
-
JEP 319 − Certificados raíz
-
JEP 319 − Certificados raíz
Java 10 mejoró más de 70 API con nuevos métodos y opciones y eliminó las API y opciones en desuso. Veremos estos cambios en los próximos capítulos.
Java