Java Development Kit (JDK) 23, la próxima versión planificada de Java estándar, ya está en funcionamiento, con dos funciones programadas para su lanzamiento. El 19 de septiembre, JDK 23 acaba de agregar una segunda vista previa de una API de archivo de clase, que proporciona una API estándar para analizar, generar y transformar archivos de clase Java. Esta característica se mostró previamente en JDK 22, que se lanzó el 19 de marzo. Anteriormente, para JDK 23 había una vista previa de los tipos primitivos en patrones, instancias y cambios. La API de archivos de clase está destinada a proporcionar una API para procesar archivos de clases. que rastrea el formato de archivo de clase definido por la especificación de la máquina virtual Java. También permitiría que los componentes del JDK migren a la API estándar y eventualmente eliminen la copia interna del JDK de la biblioteca ASM de terceros. La API de archivos de clase agregaría mejoras, incluida la optimización de la clase CodeBuilder, que tiene métodos de fábrica para instrucciones de código de bytes, incluidas fábricas de bajo nivel, fábricas de nivel medio y constructores de alto nivel para bloques básicos. Para JDK 23, los constructores de Java se eliminaron a mediados -Métodos de nivel que duplicaban métodos de bajo nivel o se usaban con poca frecuencia, mientras que cambiaban el nombre de los métodos restantes de nivel medio para mejorar la usabilidad. También refinaron el modelo de clase ClassSignature, que se ha mejorado para modelar las firmas genéricas de superclases y superinterfaces con mayor precisión. Según la propuesta de OpenJDK detrás de esta característica, la plataforma Java debería definir e implementar una API de archivo de clase estándar que evolucione junto con el formato de archivo de clase, que puede evolucionar cada seis meses. Anteriormente citada para su inclusión en JDK 23 hay otra característica de vista previa. , tipos primitivos en patrones, instancia de y cambio. Esta característica mejoraría la coincidencia de patrones al permitir patrones de tipos primitivos en todos los contextos de patrones y ampliaría la instancia y el cambio para que funcionen con todos los tipos primitivos. Los objetivos incluyen permitir patrones de tipos para todos los tipos (primitivos o de referencia), permitir patrones de tipos primitivos en contextos tanto anidados como de nivel superior y proporcionar construcciones fáciles de usar que eliminen el riesgo de perder información debido a conversiones inseguras. Otros objetivos incluyen alinear tipos de patrones con instancia de, alinear instancia de con conversión segura y permitir el cambio para procesar valores de cualquier tipo primitivo. Varias otras características vistas previas en JDK 22 podrían incorporarse a JDK 23. Estas incluyen declaraciones antes de super(…) , lo que daría a los desarrolladores mayor libertad para expresar el comportamiento del constructor; plantillas de cadenas, que facilitarían la expresión de cadenas que incluyan valores calculados en tiempo de ejecución; recolectores de corrientes, que harían los oleoductos más flexibles y expresivos; valores de ámbito, que permitirían compartir datos inmutables dentro y entre subprocesos; y clases declaradas implícitamente y métodos principales de instancia, lo que facilitaría a los programadores principiantes escribir programas sin necesidad de comprender las características del lenguaje diseñadas para programas grandes. Una API vectorial, que expresaría cálculos vectoriales que se compilan de manera confiable en tiempo de ejecución con instrucciones vectoriales óptimas en arquitecturas compatibles, es otra característica potencial en JDK 23. Una API vectorial se encontraba en una séptima etapa de incubación en JDK 22. Creación de registros derivados y un hot También son posibilidades una propuesta de montón de código, que reduciría los tiempos de ejecución de las aplicaciones. Oracle, el administrador de Java, también ha revelado planes para Java en 2024. Oracle describió mejoras que involucran proyectos OpenJDK que van desde Amber, para desarrollar funciones más pequeñas orientadas a la productividad, hasta Babylon, para extender Java a modelos de programación extranjeros como GPU, a Valhalla, para aumentar el modelo de objetos de Java con objetos de valor para eliminar cuellos de botella de rendimiento de larga data. Copyright © 2024 IDG Communications, Inc.

Source link