JDK 16: Las nuevas funciones de Java 16

Coincidiendo con el aniversario numero 25, Oracle presenta su nuevo JDK 16 o Java 16, el cual entre los aspectos mas destacados de su ultima actualización presenta 17 nuevas mejoras en su lenguaje, herramientas y administración de memoria.

Incluyen clases primitivas clases selladas, registros, una API de vector para puertos ARM64 y Alpine Linux.

Java refuerza su posición como el principal lenguaje de programación y la principal plataforma de desarrollo de aplicaciones. Java es el lenguaje numero uno, con un 69% de desarrolladores que lo emplean.

El Java Development Kit (JDK) 16 de Oracle ya está disponible como versión de producción, a partir del 16 de marzo.

¿Qué incluyen las nuevas funciones de Java 16?

La propuesta de advertencias para clases basadas en valor designa las clases contenedoras primitivas como basadas en valor y desaprueba sus constructores para su eliminación, lo que genera nuevas advertencias de desaprobación.

Vista previa en JDK 15 y nuevamente en JDK 16, las clases e interfaces selladas restringen qué otras clases e interfaces pueden extenderlas o implementarlas.

Fuerte encapsulación de los componentes internos de JDK de forma predeterminada, excepto para las API internas críticas, como misc.unsafe.

API de vinculador externo, que ofrece acceso de tipo Java puro estáticamente escrito al código nativo.

Mover el procesamiento de pila de subprocesos ZGC (Z Garbage Collector) de puntos seguros a una fase concurrente.

Una capacidad de metadatos elástica, que devuelve la memoria de metadatos (metaspace) de clase de HotSpot VM no utilizada más rápidamente al sistema operativo, reduce la huella de metaspace y simplifica el código de metadatos para reducir los costos de mantenimiento.

Habilitación de las características del lenguaje C ++ 14, para permitir el uso de las capacidades de C ++ 14 en el código fuente de JDK C ++ y brindar orientación específica sobre cuáles de estas características pueden usarse en el código de HotSpot VM.

Una API de vector en una etapa de incubadora, en la que el JDK se equiparía con un módulo de incubadora, jdk.incubator.vector, para expresar cálculos vectoriales que se compilan en instrucciones óptimas de hardware vectorial en arquitecturas de CPU compatibles, para lograr un rendimiento superior a los cálculos escalares equivalentes.

Portar el JDK a la plataforma Windows / AArch64. Con el lanzamiento del nuevo hardware AArch64 (ARM64) de tipo servidor y consumidor, Windows / AArch64 se ha convertido en una plataforma importante debido a la demanda.

Portar el JDK a Alpine Linux y a otras distribuciones de Linux que usan musl como su biblioteca C principal, en arquitecturas x64 y AArch64. Musl es una implementación de Linux de la funcionalidad de biblioteca estándar descrita en los estándares ISO C y Posix.

Proporcionar clases de registros que actúan como portadores transparentes de datos inmutables.

La adición de canales de socket de dominio Unix, en los que el soporte de socket de dominio Unix (AF_UNIX) se agrega a las API del canal de socket y del canal de socket del servidor en el paquete nio.channels.

Una API de acceso a memoria externa, que permite a los programas Java acceder de forma segura a la memoria externa fuera del montón de Java.

Coincidencia de patrones para el operador instanceof, que también fue vista previa en JDK 14 y JDK 15.

Migración de repositorios de código fuente OpenJDK de Mercurial a Git.

Migración a GitHub, relacionada con la migración de Mercurial a Git, con repositorios de código fuente JDK 16 para estar en el popular sitio de intercambio de código.

Las descargas de Oracle JDK 16 se pueden encontrar en oracle.com. Las compilaciones de código abierto de JDK 16 para Linux, Windows y MacOS se pueden encontrar en jdk.java.net. Oracle ofrece suscripciones a su versión estándar de Java, proporcionando soporte para la plataforma.

Deja un comentario