Esta nueva versiรณn de Java responde a doce propuestas de mejora de JDK, con miras a mejorar el lenguaje Java e impulsar el rendimiento, la estabilidad y la seguridad de la plataforma de desarrollo
Oracle anunciรณ la disponibilidad de Java 22, la รบltima versiรณn de la plataforma de desarrollo y el lenguaje de programaciรณn nรบmero uno del mundo. Java 21 (Oracle JDK 21) ofrece miles de mejoras de rendimiento, estabilidad y seguridad que ayudarรกn a los desarrolladores a incrementar la productividad e impulsar la innovaciรณn y el crecimiento en sus organizaciones. Estas incluyen mejoras en el lenguaje Java, sus API y rendimiento, y las herramientas incluidas en el JDK.
ยซLas nuevas mejoras de Java 22 permiten a mรกs desarrolladores crear y entregar de forma rรกpida y sencilla aplicaciones ricas en funciones, escalables y seguras para contribuir a que organizaciones de todo el mundo impulsen el crecimiento de sus negociosยป, seรฑala Georges Saab, vicepresidente sรฉnior de Oracle Java Platform y presidente del consejo de administraciรณn de OpenJDK. ยซAl ofrecer mejoras que optimizan el desarrollo de aplicaciones y amplรญan el alcance de Java para que sea accesible para desarrolladores de todos los niveles de competencia, Java 22 ayudarรก a impulsar la creaciรณn de una amplia gama de nuevas aplicaciones y servicios para organizaciones y desarrolladores por igualยป.
La รบltima versiรณn de Java Development Kit (JDK) proporciona actualizaciones y mejoras en respuesta a 12 propuestas de mejora (JEP). JDK 22 incorpora mejoras de lenguaje de OpenJDK Project Amber (Statements before super[…], Unnamed Variables & Patterns, String Templates, and Implicitly Declared Classes and Instance Main Methods); mejoras de Project Panama (Foreign Function & Memory API and Vector API); caracterรญsticas relacionadas con Project Loom (Structured Concurrency and Scoped Values); bibliotecas principales y capacidades de herramientas (Class-File API, Launch Multi-File Source-Code Programs, Stream Gatherers); y actualizaciones de rendimiento (Region Pinning for G1).
ยซDespuรฉs de casi tres dรฉcadas, la capacidad de Java para admitir tareas de desarrollo complejas que incluyen una amplia gama de casos de uso hace que la plataforma sea tan relevante como siempreยป, comenta Arnal Dayaratna, vicepresidente de investigaciรณn de desarrollo de software de IDC. ยซLa versatilidad y el conjunto de herramientas de Java permiten que facilite el desarrollo de aplicaciones esenciales de producciรณn a escala, lo que la posiciona como una tecnologรญa de activaciรณn clave para casos de uso innovadores como la IA generativaยป.
Principales actualizaciones que incorpora Java 22:
Caracterรญsticas de Project Amber
- JEP 447: Statements before super(โฆ): otorga a los desarrolladores la libertad de expresar el comportamiento de los constructores. Al permitir que las sentencias que no estรฉn referenciadas a la instancia que se estรก creando aparezcan antes de una invocaciรณn explรญcita al constructor, esta funciรณn permite una colocaciรณn mรกs natural de la lรณgica que se debe tener en cuenta en los mรฉtodos estรกticos auxiliares, los constructores intermedios auxiliares o los argumentos del constructor. Tambiรฉn sigue garantizando que los constructores se ejecuten en orden descendente durante la instanciaciรณn de clases, lo que garantiza que el cรณdigo de un constructor de subclases no pueda interferir con la instanciaciรณn de superclases. Ademรกs, esta funciรณn no exige la realizaciรณn de cambios en Java Virtual Machine y solo se basa en la capacidad actual de JVM de verificar y ejecutar el cรณdigo que aparece antes de las invocaciones explรญcitas al constructor dentro de los constructores.
- JEP 456 Unnamed Variables & Patterns: contribuyea mejorar la productividad del desarrollador a travรฉs de la mejora del lenguaje Java con variables y patrones sin nombre, que se pueden utilizar cuando se necesitan declaraciones de variables o patrones anidados, pero nunca se utilizan. De esta manera, se reduce la probabilidad de cometer errores, mejora la legibilidad de los patrones de registro y aumenta la capacidad de mantenimiento de todo el cรณdigo.
- JEP 459: String Templates (Second Preview) simplifica el desarrollo de programas Java al facilitar la expresiรณn de cadenas que incluyen valores calculados en tiempo de ejecuciรณn y mejora la seguridad de los programas que componen cadenas a partir de valores proporcionados por el usuario y las transfieren a otros sistemas. Ademรกs, se mejora la legibilidad de las expresiones que mezclan texto y expresiones, y se pueden crear valores no de cadena calculados a partir de texto literal y expresiones embebidas sin tener que pasar por una representaciรณn de cadena intermedia.
- JEP 463: Implicitly Declared Classes and Instance Main Methods (Second Preview): ayuda a acelerar el aprendizaje ya que ofrece un acercamiento sencillo a la programaciรณn de Java para que los estudiantes puedan escribir sus primeros programas sin necesidad de comprender las funciones de lenguaje diseรฑadas para programas grandes. Con esta funciรณn, los educadores pueden introducir conceptos de manera progresiva y los estudiantes pueden escribir declaraciones simplificadas para programas de clase รบnica y expandir sin problemas sus programas para usar caracterรญsticas mรกs avanzadas a medida que desarrollan sus competencias.
Caracterรญsticas de Project Loom
- JEP 462: Structured Concurrency (Second Preview): permite que los desarrolladores optimicen la gestiรณn y la resoluciรณn de errores y mejoren la observabilidad mediante la introducciรณn de una API para la concurrencia estructurada. Ayuda a promover un estilo de programaciรณn concurrente que pueda eliminar riesgos comunes derivados de la cancelaciรณn y el cierre, como las fugas de threads y los retrasos de cancelaciรณn, y mejore la observabilidad del cรณdigo concurrente.
- JEP 464: Scoped Values (Second Preview): contribuye a aumentar la facilidad de uso, la comprensibilidad, el rendimiento y la solidez de los proyectos de los desarrolladores, ya que facilita el uso compartido de datos inmutables dentro de los threads y entre ellos.
Caracterรญsticas de Project Panama
- JEP 454: Foreign Function & Memory API: aumenta la facilidad de uso, la flexibilidad, la seguridad y el rendimiento de los desarrolladores mediante la introducciรณn de una API que 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 como cรณdigo ajeno a Java Virtual Machine (JVM) y mediante el acceso seguro a memoria externa (es decir, no gestionada por JVM), la nueva API permite a los programas Java llamar a bibliotecas nativas y procesar datos nativos sin necesidad de utilizar Java Native Interface.
- JEP 460: Vector API (Seventh Incubator): permite a los desarrolladores lograr un rendimiento superior a los cรกlculos escalares equivalentes mediante la introducciรณn de una API para expresar cรกlculos vectoriales que compilen de forma fiable en tiempo de ejecuciรณn instrucciones de vector en arquitecturas de CPU soportadas.ย
Caracterรญsticas de Core Libraries & Tools
- JEP 457: Class-File API (Preview): ayuda a los desarrolladores a mejorar la productividad proporcionando una API estรกndar para analizar, generar y transformar archivos de clase Java.
- JEP 458: Launch Multi-File Source-Code Programs: brinda a los desarrolladores la capacidad de elegir si configuran o no, y cuรกndo, una herramienta de creaciรณn, ya que mejora el iniciador de aplicaciones Java para ejecutar un programa proporcionado como varios archivos de cรณdigo fuente Java.
- JEP 461: Stream Gatherers (Preview): ayuda a los desarrolladores a mejorar la productividad mediante la mejora de la API de flujo para soportar operaciones intermedias personalizadas, lo que permitirรก a los pipelines de flujo transformar datos de formas que no se pueden lograr fรกcilmente con las operaciones intermedias prediseรฑadas existentes. Al incrementar la flexibilidad y la expresividad de los pipelines de flujo y permitir que las operaciones intermedias personalizadas manipulen flujos de tamaรฑo infinito, esta funciรณn permite a los desarrolladores ser mรกs eficientes en la lectura, escritura y mantenimiento de cรณdigo Java.
Actualizaciones del rendimiento
- JEP 423: Region Pinning for G1: contribuye a reducir la latencia ya que permite que se produzca alguna recopilaciรณn de basura de programaciรณn durante algunas llamadas de biblioteca nativa que, de lo contrario, habrรญan precisado interrumpir el recopilador. Esto se logra realizando el seguimiento de los objetos que se deben bloquear durante estas llamadas de biblioteca nativa y el ยซanclajeยป solo de las regiones que contienen estos objetos. Esto permite que la recolecciรณn de basura de programaciรณn continรบe con normalidad en regiones sin anclaje, incluso durante lo que de otro modo habrรญa sido una llamada de bloque a un biblioteca nativa
Java 21 es el resultado de la continua colaboraciรณn entre ingenieros de Oracle y otros miembros de la comunidad mundial de desarrolladores Java a travรฉs de OpenJDK y Java Community Process (JCP). Ademรกs de estas nuevas mejoras y caracterรญsticas, Java 22 incluye Java Management Service (JMS), 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 y en cualquier nube. Para obtener mรกs informaciรณn sobre las funciones de Java 22, lee la publicaciรณn tรฉcnica de blog sobre Java 22.
Soporte del ecosistema global de Java con innovaciรณn en la nube
Java impulsa el rendimiento, la eficiencia, la innovaciรณn y el ahorro de costes cuando se implementa en la nube en Oracle Cloud Infrastructure, que es una de las primeras nubes hiperescaladoras en admitir Java 22. Al ofrecer Oracle Java SE, Oracle GraalVM y Java SE Subscription Enterprise Performance Pack de forma gratuita con Oracle Cloud Infrastructure, Java 22 permite a los desarrolladores crear y desplegar aplicaciones que se ejecutan mรกs rรกpido, mejor y con una rentabilidad optimizada.
Oracle Java Universal SE Subscription es una oferta de pago por consumo que proporciona a los clientes el mejor soporte de su categorรญa. Incluye soporte de clasificaciรณn para toda la cartera de Java, derecho de acceso a GraalVM Enterprise, Java SE Subscription Enterprise Performance Pack, acceso a las funciones avanzadas de Java Management Service y flexibilidad para realizar actualizaciones al ritmo de su negocio. Esto ayuda a las organizaciones de TI a hacer frente a la complejidad, limitar sus costes y mitigar los riesgos de seguridad.
La comunidad global de Java adopta Java 22
ยซDentro del ecosistema dinรกmico de la Comunidad Java de Turquรญa (TJC), el soporte duradero de Oracle alimenta nuestro impulsoยป, seรฑala Evren Tan, lรญder de la comunidad de TJC. ยซAl tiempo que se desarrolla Java 22, estamos adoptando una serie de funcionalidades contemporรกneas que mejoran aรบn mรกs la eficiencia de los desarrolladores, reforzando nuestro compromiso con el avance de la tecnologรญa Java en Turquรญa. Tambiรฉn damos la bienvenida a los desarrolladores de Java de todo el mundo para que se unan a nosotros en las actividades de TJC, con el espรญritu acogedor de la comunidad que mantiene vibrante a Javaยป.
ยซLa popularidad de Java como lenguaje de programaciรณn, plataforma y comunidad de desarrolladores sigue creciendo en Marruecos y en la regiรณn africanaยป, comenta Badr El Hourari, fundador y CIO de xHub. ยซCon Java 22, es alentador ver al equipo de Java de Oracle centrarse en unas innovaciones que ayudarรก a los nuevos desarrolladores a adoptar Java con mayor rapidez, como con JEP 463. Al simplificar el lenguaje, se allana el acceso a Java para una nueva generaciรณn de programadores. Ademรกs, aquรญ en Marruecos, seguimos destacando la importancia de Java en la conferencia anual de Devoxx Marruecos, e invitamos a todos los desarrolladores al evento de este aรฑo para escuchar a algunas de las voces globales mรกs influyentes en la comunidad de Javaยป.
ยซMe entusiasman las caracterรญsticas que Java 22 reรบne para todos, desde estudiantes hasta desarrolladores sรฉnior, y desde entusiastas aventureros de Java hasta organizaciones que buscan un rendimiento estableยป, comenta Mala Gupta, Java Developer Advocate, JetBrains. ยซJava estรก adoptando un enfoque minimalista, ya que trata de reducir todos los formalismos relacionados con la escritura de pasos iniciales de cรณdigo, a travรฉs del mรฉtodo principal de la instancia y las clases implรญcitas, lo que facilita a las personas comenzar a aprender Java. Con el cambio de imagen del constructor (Statements before Super[โฆ]), Java ha demostrado una vez mรกs que impulsa la innovaciรณn responsable, y es muy reconfortante que reduzca las restricciones de lenguaje que existรญan en la versiรณn 1.0 de Java sin romper ningรบn cรณdigo. IntelliJ IDEA 2024.1 estรก listo para admitir las funcionalidades de Java 22 con la vista puesta en facilitar su uso por parte de los desarrolladores de Javaยป.
ยซEl equipo de Helidon reconociรณ el valor de los threads virtuales en cuanto los anunciaron. Con Helidon 4, el equipo reescribiรณ el servidor web de Helidon para utilizar de forma nativa threads virtuales, lo que redundรณ en un notable incremento del rendimiento mucho mejor y de la productividad de los desarrolladoresยป, seรฑala Will Lyons, vicepresidente de gestiรณn de productos, Oracle. ยซAhora con Java 22 estamos percibiendo otro nuevo aumento del rendimiento de los threads virtuales, y estas importantes mejoras beneficiarรกn a todos los usuarios de Helidonยป.
Para obtener mรกs informaciรณn sobre Java y su ecosistema global, visita:
- Dev.java: el portal oficial de formaciรณn de Java
- Inside.java: noticias y opiniones de los miembros del equipo Java de Oracle
- Java YouTube: canal oficial de Java en YouTube para consultar vรญdeos de formaciรณn sobre Java
Recursos adicionales
- Descarga Oracle JDK 22
- Lee el blog tรฉcnico de Java 22
- Mira el Livestream de Java 22
- Mรกs informaciรณn sobre Java Management Service
- Mรกs informaciรณn sobre Oracle Java SE Universal Subscription

Deja un comentario