Oracle ha anunciado el lanzamiento de Java 23, que contiene una serie de características de biblioteca y lenguaje nuevos, la mayoría en versión preliminar. Según Chad Arimura, vicepresidente de relaciones con desarrolladores de Oracle, el hecho de que la mayoría de las propuestas de mejora de JDK (JEP) en esta versión sean vistas previas de lo que está por venir en lugar de características estables es una señal de que el proceso de retroalimentación está funcionando. «Los PEC a menudo cambian y evolucionan un poco durante el proceso, y terminan siendo mucho mejores de lo que hubieran sido. Simplemente arrojamos algo por encima del muro basándonos en una retroalimentación mucho más limitada», dijo. Las características del lenguaje en Java 23 son el resultado del Proyecto Amber, una iniciativa de OpenJDK para «explorar e incubar características del lenguaje Java más pequeñas y orientadas a la productividad». Una de las características de Project Amber en la vista previa son los tipos primitivos en patrón, instancia de y cambio (JEP 455). Esto elimina las restricciones sobre los tipos primitivos cuando se trabaja con coincidencia de patrones, creación de instancias y conmutación, lo que permite que Java sea más expresivo, lo que resulta en una productividad mejorada. Otra característica de vista previa son las declaraciones de importación de módulos (JEP 476), que permiten a los desarrolladores importar todos los paquetes exportados desde un módulo sin que el código de importación tenga que estar en un módulo. Según Oracle, esto hace que las bibliotecas modulares sean más reutilizables y ayuda a los principiantes a utilizar más fácilmente bibliotecas de terceros sin tener que aprender dónde se encuentran en la jerarquía de paquetes. En su tercera vista previa, Clases implícitamente declaradas y métodos principales de instancia (JEP 477) es otra característica diseñada para principiantes y estudiantes que les permite escribir programas más pequeños sin tener que aprender primero las características del lenguaje diseñadas para proyectos más grandes. Según Arimura, JEP 476 y 477 están «centrados en continuar llegando a la próxima generación de desarrolladores, continuando eliminando la comprensión de que Java es el lenguaje de sus padres y que es un estándar pesado y una ceremonia pesada». Y por último, en su segundo avance, organismos de construcción flexibles (JEP 482). Esto brinda a los desarrolladores más libertad para expresar el comportamiento de los constructores al permitir que se muestren declaraciones antes de una invocación explícita del constructor. Preserva la garantía de que al crear una instancia de la clase, los constructores se ejecutan en orden de arriba a abajo. La siguiente gran categoría de actualizaciones involucra bibliotecas. La API Class-File (en la segunda vista previa) es una API estándar para analizar, generar y transformar archivos de clase Java. En su octava fase de incubación, JEP 469, Vector API es una API que expresa «cálculos vectoriales que se compilan de manera confiable en tiempo de ejecución para instrucciones vectoriales en arquitecturas de CPU compatibles», lo que mejora el rendimiento. Esta versión también incluye una segunda vista previa de los recopiladores de flujo (JEP 473), que permite que Stream API admita operaciones intermedias personalizadas. Otras actualizaciones de la biblioteca incluyen JEP 480 y 481, ambas en su tercera vista previa. 480 es concurrencia estructurada, que permite a los desarrolladores consolidar grupos de tareas relacionadas que se ejecutan en diferentes subprocesos. 481 son valores con alcance, lo que permite «compartir datos inmutables dentro y entre subprocesos». En términos de rendimiento y tiempo de ejecución, la actualización principal en Java 23 es que el modo predeterminado de Z Garbage Collector (ZGC) ahora es el modo generacional. El modo no generacional está obsoleto y se eliminará en una versión futura. Otra inclusión en Java 23 por parte de Oracle es la incorporación del compilador Graal JIT en Oracle JDK. Esto significa que los usuarios de Oracle JDK ahora pueden acceder a las funciones desarrolladas en GraalVM EE. Según Oracle, esta incorporación brinda a los desarrolladores y administradores de sistemas más oportunidades para ajustar y mejorar el rendimiento de las cargas de trabajo. «Queríamos asegurarnos de que las personas pudieran acceder a él fácilmente y que usted pueda probarlo fácilmente ahora si está utilizando Oracle JDK, sin tener que descargar nada más para llegar allí». Dijo Arimura. Finalmente, en esta versión falta el JEP para las plantillas de cadenas, se eliminó y se está modificando activamente en función de los comentarios de la comunidad. «Eso no significa que los objetivos no sean relevantes, pero significa que puede haber una nueva forma de alcanzarlos», dijo Arimura.
Check Also
Los 10 principales desafíos de la RCM en el sector sanitario y cómo superarlos
El mundo médico actual es complejo y la gestión del ciclo de ingresos (RCM) es …