Actualizaciones más significativas de Java 20

Actualizaciones y mejoras del lenguaje

  • JEP 432: Patrones de registro: Mejora el lenguaje Java al permitir que los usuarios aniden patrones de registro y de tipo para crear un método potente, declarativo y componible de navegación y procesamiento de datos. Esto ayuda a aumentar la productividad de los desarrolladores al permitirles ampliar la coincidencia de patrones para permitir consultas de datos compuestas y más sofisticadas.
  • JEP 433: Correspondencia de patrones a las expresiones «switch»: La ampliación de la correspondencia de patrones a las expresiones switch permite que una expresión se pruebe con una serie de patrones, cada uno con una acción específica, de modo que las consultas complejas orientadas a datos se puedan expresar de forma concisa y segura.  La ampliación de la expresividad y aplicabilidad de expresiones y sentencias «switch» ayuda a aumentar la productividad de los desarrolladores.

Funciones del proyecto Loom en vista previa/incubación

  • JEP 429: Valores de ámbito: activa el uso compartido de datos inmutables en threads individuales y entre distintos threads, que son preferibles a las variables locales de threads, especialmente cuando se utilizan grandes números de threads virtuales. De esta forma, se incrementa la facilidad de uso, la comprensión, la solidez y el rendimiento.
  • JEP 436: Threads virtuales: Optimiza significativamente el proceso de escritura, mantenimiento y observación de aplicaciones concurrentes de alto rendimiento mediante la introducción de threads virtuales ligeros en la plataforma Java. Al permitir que los desarrolladores solucionen problemas, depuren y perfilen fácilmente aplicaciones concurrentes con las herramientas y técnicas actuales de JDK, los threads virtuales aceleran el desarrollo de aplicaciones.
  • JEP 437: Concurrencia estructurada: Simplifica la programación multithread al tratar varias tareas que se ejecutan en diferentes threads como una única unidad de trabajo. De esta manera, los equipos de desarrollo optimizan la gestión y la cancelación de errores, mejoran la fiabilidad e incrementan la observabilidad.

Funciones de vista previa del proyecto Panama

  • JEP 434: API de memoria y funciones externas: permite que los programas Java interoperen con código y datos fuera del tiempo de ejecución de Java. Al invocar de forma eficaz funciones externas (esto es, código ajeno a Java Virtual Machine, o JVM) y mediante el acceso seguro a memoria externa (es decir, no gestionada por JVM), la API permite a los programas Java llamar a bibliotecas nativas y procesar datos nativos sin necesidad de utilizar Java Native Interface. Así, se logra aumentar la facilidad de uso, el rendimiento y la seguridad.
  • JEP 438: API de vector: Expresa cálculos de vector que recopilan de forma fiable en tiempo de ejecución instrucciones de vector en arquitecturas de CPU soportadas. Esto aumenta el rendimiento en comparación con los cálculos escalares equivalentes.

Java 20 es el resultado de una amplia colaboración entre ingenieros de Oracle y otros miembros de la comunidad mundial de desarrolladores de Java a través del  OpenJDK y del Java Community Process (JCP). A estas nuevas mejoras se suma la compatibilidad de Java 20 con  Java Management Service, un servicio nativo de Oracle Cloud Infrastructure (OCI) que proporciona un único panel para ayudar a las organizaciones a gestionar los tiempos de ejecución y aplicaciones Java en entornos locales o en cualquier nube.

Soporte a los clientes y al ecosistema global de Java

Oracle Java Universal SE Subscription es una oferta de pago por consumo que proporciona a los clientes el mejor soporte posible, incluido el soporte de clasificación para toda la cartera de Java, el derecho a GraalVM Enterprise, Java SE Subscription Enterprise Performance Pack, el acceso a las funciones avanzadas de Java Management Service y la flexibilidad para realizar actualizaciones al ritmo de su negocio.

Esto ayuda a las organizaciones de TI a gestionar la complejidad, contener los costes y mitigar los riesgos de seguridad. Además, Oracle Java SE, GraalVM Enterprise y Java SE Subscription Enterprise Performance Pack están disponibles de forma gratuita en Oracle Cloud Infrastructure, lo que permite a los desarrolladores crear y desplegar aplicaciones que se ejecutan más rápido, mejor y con una relación rendimiento-coste inmejorable en Oracle Cloud.