Oracle ha anunciado la disponibilidad de Java 19, la última versión del lenguaje de programación y la plataforma de desarrollo número uno del mundo. Java 19 (Oracle JDK 19) ofrece miles de mejoras en el rendimiento, la estabilidad y la seguridad, incluyendo mejoras en la plataforma que ayudarán a los desarrolladores a mejorar la productividad e impulsar la innovación en toda la empresa. Oracle mostrará las últimas capacidades de Java 19 en JavaOne 2022, que tendrá lugar del 17 al 20 de octubre en Las Vegas, y a través de una transmisión de la nota clave que se emitirá en dev.java/el 20 de septiembre.

El último kit de desarrollo de Java (JDK) ofrece actualizaciones y mejoras con siete propuestas de mejora del JDK (JEP). La mayoría de estas actualizaciones se entregarán como características de seguimiento de la vista previa que mejoran la funcionalidad introducida en versiones anteriores. JDK 19 ofrece mejoras en el lenguaje del proyecto OpenJDK Amber (Record Patterns y Pattern Matching for Switch); mejoras en las bibliotecas para interoperar con código no Java (Foreign Function and Memory API) y para aprovechar las instrucciones vectoriales (Vector API) del proyecto OpenJDK Panama; y las primeras previsiones del proyecto Loom (Virtual Threads y Structured Concurrency), que reducirán drásticamente el esfuerzo necesario para escribir y mantener aplicaciones concurrentes de alto rendimiento en Java.

Oracle ofrece nuevas versiones de las características de Java cada seis meses mediante un calendario de lanzamientos predecible. Esta cadencia proporciona un flujo constante de innovaciones a la vez que ofrece mejoras continuas en el rendimiento, la estabilidad y la seguridad de la plataforma, lo que contribuye a aumentar la omnipresencia de Java en organizaciones e industrias de todos los tamaños. Las actualizaciones más significativas entregadas en Java 19 son Actualizaciones y mejoras del lenguaje: JEP 405: Patrones de registro (vista previa): Permite a los usuarios anidar patrones de registro y patrones de tipo para crear una forma potente, declarativa y componible de navegación y procesamiento de datos.

Esto amplía la concordancia de patrones para permitir consultas de datos más sofisticadas y componibles. JEP 427: Coincidencia de patrones para Switch (tercera versión): Permite la concordancia de patrones para expresiones y sentencias de conmutación al permitir que una expresión se compruebe con una serie de patrones. Esto permite a los usuarios expresar consultas complejas orientadas a los datos de forma concisa y segura.

Herramientas de la biblioteca: JEP 424: API de funciones y memorias externas (vista previa): Permite a los programas Java interoperar más fácilmente con código y datos fuera del tiempo de ejecución de Java. Mediante la invocación eficiente de funciones ajenas (es decir, código fuera de la máquina virtual Java [JVM]), y el acceso seguro a la memoria ajena (es decir, memoria no gestionada por la JVM), esta API permite a los programas Java llamar a bibliotecas nativas y procesar datos nativos mediante un modelo de desarrollo puramente Java. El resultado es una mayor facilidad de uso, rendimiento, flexibilidad y seguridad.

JEP 426: API vectorial (cuarta incubadora): Permite un rendimiento superior en comparación con los cálculos escalares equivalentes al expresar cálculos vectoriales que se compilan de forma fiable en tiempo de ejecución a instrucciones vectoriales en las arquitecturas de CPU compatibles. Puertos: JEP 422: Puerto Linux/RISC-V: Establece el escenario para facilitar las implementaciones de Linux/RISC-V al integrar este puerto en el repositorio de la línea principal del JDK. Características del proyecto Loom Preview/Incubator: JEP 425: Hilos virtuales (Vista previa): Reduce drásticamente el esfuerzo de escribir, mantener y observar aplicaciones concurrentes de alto rendimiento introduciendo hilos virtuales ligeros en la plataforma Java.

El uso de hilos virtuales permite a los desarrolladores solucionar fácilmente los problemas, depurar y perfilar las aplicaciones concurrentes con las herramientas y técnicas existentes del JDK. JEP 428: Concurrencia estructurada (Incubadora): Agiliza la gestión y la cancelación de errores, mejora la fiabilidad y aumenta la observabilidad simplificando la programación multihilo y tratando las tareas múltiples que se ejecutan en diferentes hilos como una única unidad de trabajo. Impulsando la innovación de Java en la nube: El lanzamiento de Java 19 es el resultado de una amplia colaboración entre los ingenieros de Oracle y otros miembros de la comunidad mundial de desarrolladores de Java a través del proyecto OpenJDK y el proceso de la comunidad Java (JCP).

Además de las nuevas mejoras, Java 19 cuenta con el apoyo de Java Management Service – un servicio nativo de Oracle Cloud Infrastructure (OCI) – que proporciona un único panel de vidrio para ayudar a las organizaciones a gestionar los tiempos de ejecución y las aplicaciones de Java en las instalaciones o en cualquier nube. Apoyo a los clientes de Java: La suscripción a Oracle Java SE es una oferta de pago por uso que proporciona a los clientes el mejor soporte de su clase, el derecho a GraalVM Enterprise, el acceso al servicio de gestión de Java y la flexibilidad para actualizar al ritmo de sus negocios. Esto ayuda a las organizaciones de TI a gestionar la complejidad, contener los costes y mitigar los riesgos de seguridad.

Además, Java SE y GraalVM Enterprise se ofrecen de forma gratuita en OCI, lo que permite a los desarrolladores crear y desplegar aplicaciones que se ejecutan más rápido, mejor y con un rendimiento de costes inmejorable en Oracle Cloud. Subrayando la popularidad de Java entre la comunidad global de desarrolladores, Oracle se enorgullece de reconocer la certificación Java número un millón completada. Las certificaciones de Java ayudan a los desarrolladores a destacar como expertos en Java y a elevar su perfil ante las empresas que buscan atraer a profesionales de Java altamente cualificados.