Comunicado de prensa

Oracle lanza Java 23

La nueva versión ofrece 12 propuestas de mejora de JDK que ayudan a los desarrolladores a aumentar la productividad reforzando el lenguaje Java

Las mejoras en el rendimiento, la estabilidad y la seguridad de la plataforma ayudan a las organizaciones a acelerar el crecimiento del negocio

Java Management Service 9.0 y Graal JIT Compiler ayudan a las organizaciones a gestionar aplicaciones Java e incrementar el pico de rendimiento

Austin, Texas—17 de septiembre de 2024
Java

Oracle anunció hoy que ya está disponible Java 23, la última versión del lenguaje de programación y la plataforma de desarrollo número uno del mundo. Java 23 (Oracle JDK 23) ofrece miles de mejoras para ayudar a los desarrolladores a aumentar la productividad e impulsar la innovación, mientras que las relativas al rendimiento, la estabilidad y la seguridad de la plataforma permiten que las organizaciones aceleren el crecimiento del negocio.

"Java continúa evolucionando para apoyar las necesidades de desarrollo de aplicaciones modernas cada vez más diversas de las organizaciones", dijo Arnal Dayaratna, vicepresidente de investigación de desarrollo de software de IDC. "La nueva versión permite a los desarrolladores ampliar su conjunto de herramientas y aumentar su productividad, ayudándolos a construir y entregar aplicaciones que aprovechan el poder de tecnologías innovadoras como la IA. Al ofrecer nuevas capacidades innovadoras cada seis meses, Java sigue ayudando a los equipos de desarrollo a agregar un valor significativo a sus organizaciones".

Además de las nuevas mejoras y funciones para los desarrolladores, Java 23 proporciona un valor significativo a sus organizaciones. Por ejemplo, Java 23 cuenta con el apoyo de GA de Java Management Service (JMS) 9.0, un servicio nativo de Oracle Cloud Infrastructure (OCI), que proporciona una consola y un panel de control unificados para ayudar a las organizaciones a gestionar los tiempos de ejecución y aplicaciones Java en entornos locales o en cualquier nube. Además, JMS 9.0 proporciona muchas mejoras de usabilidad, y Oracle JDK 23 brinda más opciones para ajustar y mejorar el rendimiento máximo con la adición del compilador Graal, un compilador dinámico Just-In-Time (JIT) escrito en Java que transforma el código de byte en código de máquina optimizado.

"Las nuevas funciones de Java 23 ayudan a los desarrolladores de todos los niveles de experiencia a aumentar su productividad y optimizar el desarrollo de aplicaciones de alto rendimiento, seguras y escalables", dijo Georges Saab, vicepresidente sénior de Oracle Java Platform y presidente del consejo de administración de OpenJDK. "Con una amplia gama de nuevas funciones y herramientas diseñadas para ayudar a los desarrolladores a crear y entregar aplicaciones de forma más rápida y eficiente, Java 23 contribuye a que los equipos de desarrollo y sus organizaciones impulsen la innovación y un mayor crecimiento empresarial".

Java 23 ofrece mejoras generales y específicas del lenguaje Java, el tiempo de ejecución, las bibliotecas y las herramientas incluidas en Java Development Kit (JDK). Entre las principales actualizaciones que incorpora Java 23 se encuentran las siguientes:

Funciones de idioma vía Project Amber

  • JEP 455: Tipos primitivos en Patterns, instanceof y switch (vista previa): ayuda a aumentar la productividad de la programación en Java haciendo que el lenguaje sea más uniforme y expresivo. Al ayudar a eliminar las restricciones relacionadas con los tipos primitivos que encuentran los desarrolladores al utilizar la coincidencia de Patterns, instanceof y switch, mejora la coincidencia de patrones al permitir patrones de tipo primitivo en todos los contextos de patrones, y también amplía instanceof y switch para trabajar con todos los tipos primitivos.
  • JEP 476: Declaraciones de importación de módulos (vista previa): ayuda a los desarrolladores a mejorar la productividad al permitirles importar de forma rápida y sencilla todos los paquetes exportados por un módulo, sin necesidad de que el código de importación esté en el propio módulo. Esto simplifica la reutilización de bibliotecas modulares para todos los desarrolladores y ayuda a los principiantes a utilizar más fácilmente bibliotecas de terceros y clases de Java fundamentales sin necesidad de saber dónde se localizan dentro de una jerarquía de paquetes.
  • JEP 477: Clases declaradas implícitamente y métodos principales de instancia (tercera vista previa): ayuda a acelerar el aprendizaje y el desarrollo de competencias ofreciendo un acceso fluido a la programación en Java, para que los estudiantes puedan escribir sus primeros programas sin necesidad de comprender las funciones de lenguaje diseñadas para programas grandes. Como resultado, los educadores y los instructores pueden introducir conceptos gradualmente, y los estudiantes pueden escribir declaraciones simplificadas para programas de una sola clase y expandir sus programas sin problemas con características más avanzadas a medida que sus habilidades crecen. Además, los desarrolladores de Java con experiencia pueden escribir pequeños programas sucintamente sin necesidad de utilizar herramientas diseñadas para proyectos más grandes.
  • JEP 482: Elementos "body" de constructores flexibles (segunda vista previa): ayuda a los desarrolladores a aumentar la productividad permitiendo que las sentencias aparezcan antes de una llamada explícita al constructor, como super(..) o this(..). Las sentencias no pueden hacer referencia a la instancia en construcción, pero pueden inicializar sus campos antes de invocar a otro constructor, lo que hace que una clase sea más fiable cuando se sustituyen los métodos. Esto aporta a los desarrolladores mayor libertad para expresar el comportamiento de los constructores y preserva la garantía existente de que los constructores se ejecuten en orden descendente durante la instanciación de clases.

Bibliotecas

  • JEP 466: API de archivo de clase (segunda vista previa): ayuda a los desarrolladores a mejorar la productividad proporcionando una API estándar para analizar, generar y transformar archivos de clase Java.
  • JEP 469: API vectorial (octavo incubador): Ayuda a los desarrolladores a mejorar la productividad introduciendo una API para expresar cálculos vectoriales que se compilan de manera confiable en tiempo de ejecución a instrucciones vectoriales en arquitecturas de CPU compatibles. De esta manera, los desarrolladores pueden lograr un rendimiento superior a los cálculos escalares equivalentes.
  • JEP 473: recopiladores de flujos (vista previa): ayuda a los desarrolladores a mejorar la productividad mejorando la API de flujos para que admita operaciones intermedias personalizadas, lo que permite a las cadenas de flujos transformar datos de formas que no son fáciles de conseguir con las operaciones intermedias integradas existentes Al hacer más flexibles y expresivos los pipelines de flujos y permitir operaciones intermedias personalizadas para manipular flujos de tamaño infinito, esta función permite a los desarrolladores ser más eficientes en la lectura, escritura y mantenimiento del código Java.
  • JEP 480: Concurrencia estructurada (tercera vista previa): ayuda a los desarrolladores a mejorar la capacidad de mantenimiento, confiabilidad y observabilidad del código multithread simplificando la programación simultánea a través de una nueva API para la simultaneidad estructurada. Al consolidar grupos de tareas relacionadas que se ejecutan en diferentes threads en una sola unidad de trabajo, la simultaneidad estructurada puede ayudar a eliminar los riesgos comunes derivados de la cancelación y el cierre, como las fugas de threads y los retrasos de cancelación.
  • JEP 481: valores de ámbito (tercera vista previa): ayuda a aumentar la facilidad de uso, la comprensibilidad, el rendimiento y la solidez de los proyectos de los desarrolladores al permitir el uso compartido de datos inmutables dentro de los threads y entre ellos.

Actualizaciones de rendimiento y tiempo de ejecución

  • JEP 474: ZGC —modo generacional por Defecto: Ayuda a los desarrolladores a aumentar la eficiencia cambiando el modo por defecto de Z Garbage Collector (ZGC) al modo generacional, lo que reduce los recursos y los costos de mantenimiento necesarios para admitir dos modos diferentes.

Herramientas

  • JEP 467: comentarios de documentación de markdown: ayuda a los desarrolladores a aumentar la eficiencia y la productividad al permitir que los comentarios de documentación de Javadoc se escriban en Markdown en lugar de solo en etiquetas @ de HTML y Javadoc. Al obtener la capacidad de utilizar la sintaxis de Markdown en los comentarios de documentación junto con elementos HTML y etiquetas JavaDoc, los desarrolladores pueden escribir y leer más fácilmente comentarios de documentación de API en el formato fuente sin afectar negativamente a la interpretación de los comentarios de documentación existentes.

Administración

  • JEP 471: dejar de usar métodos de acceso a memoria en sun.misc.unsafe para su eliminación: proporciona a los desarrolladores un conjunto de herramientas optimizado ya que los ayuda a comprender cuándo sus aplicaciones dependen, directa o indirectamente, de los métodos de acceso a memoria en sun.misc.Unsafe, cuya eliminación se ha planificado para una versión futura.

 

Las funciones de Java 23 son el resultado de la estrecha colaboración entre Oracle y otros miembros de la comunidad mundial de desarrolladores de Java a través de OpenJDK y el Java Community Process (JCP). Para obtener más información sobre las funciones de Java 23, lee el post del blog técnico de Java 22.

 

Soporte para Global Java Community con innovación en la nube

Java ofrece un mayor rendimiento, eficiencia, innovación y ahorro de costos cuando se implementa en la nube en Oracle Cloud Infrastructure, que es una de las primeras nubes a hiperescala compatibles con Java 23. Al ofrecer Oracle Java SE, Oracle GraalVM y Java SE Subscription Enterprise Performance Pack sin cargos adicionales en Oracle Cloud Infrastructure, Java 23 permite a los desarrolladores crear e implementar aplicaciones que se ejecuten más rápido, mejor y con una relación costo-rendimiento optimizada.

La suscripción a Oracle Java Universal SE es una oferta que proporciona a los clientes el mejor soporte de su clase. Incluye soporte de triaje para toda la cartera de productos Java, derecho a Oracle GraalVM, Java SE Subscription Enterprise Performance Pack, acceso a las funciones avanzadas de JMS y flexibilidad para actualizar al ritmo de que marcan las empresas de los clientes. Esto ayuda a las organizaciones de TI a gestionar la complejidad, mitigar los riesgos de seguridad y mantener los costos a raya. .

Además, Oracle recientemente anunció en Oracle CloudWorld que Oracle Code Assist se optimizará inicialmente para Java. Oracle Code Assist es un compañero de código de IA que facilita la creación de aplicaciones Java, y el servicio Oracle Code Assist que se ejecuta en OCI también estará disponible para C, C++, Go, JavaScript, PL/SQL, Python, Ruby y Rust.

JavaOne vuelve en 2025

El evento insignia de la comunidad global de Java, JavaOne, regresa al Área de la Bahía de San Francisco en 2025. Del 17 al 20 de marzo de 2025 en Redwood Shores, California, JavaOne 2025 ofrecerá a los asistentes la oportunidad de conocer los últimos desarrollos de Java e interactuar con los expertos de Java y los expertos de la industria de Oracle. Obtén más información en la publicación del blog Inside Java aquí y si quieres realizar una presentación en JavaOne, consulta la convocatoria de ponencias aquí.

Testimonios

"El desarrollo ágil ayuda a garantizar la alineación con las necesidades de los clientes a través de bucles de retroalimentación, y Java ofrece la agilidad que los desarrolladores necesitan", apunta Venkat Subramanian, presidente de Agile Developer, Inc. "Entre el gran abanico funciones valiosas de Java 23, estoy particularmente impresionado por la evolución de los recopiladores de flujos. Es una función increíblemente útil para crear pasos personalizados en un pipeline de desarrollo de código funcional para que puedas centrarte en las necesidades comerciales específicas de forma eficaz".

"He estado revisando mi libro introductorio de Java utilizando las funciones de vista previa de las clases declaradas implícitamente de Java 23, y como autor y educador, me facilitan mucho el trabajo", comenta Barry Burd, profesor de la Universidad de Drew. Gran parte del código detallado en ediciones anteriores ha pasado por el camino, lo que ayuda a los estudiantes a concentrarse en la lógica esencial en lugar de navegar a través de líneas de texto fijo. Además, dado que las clases declaradas implícitamente y los métodos principales de instancia me permiten simplificar los ejemplos de código del libro, ahora hay más espacio para incluir otros conceptos interesantes de Java. Estoy emocionado de enseñar programación a mis estudiantes universitarios con Java 23".

"En JetBrains, nos esforzamos por ayudar a los desarrolladores a consumir y adoptar nuevas funciones de Java en IntelliJ IDEA incluso antes de que sean lanzadas a producción, y esto ciertamente se aplica al soporte de IDE para Java 23", señala Mala Gupta, defensora de los desarrolladores de Java, JetBrains. "IntelliJ IDEA 2024.2 facilita a los desarrolladores el uso de las nuevas funciones altamente innovadoras de Java 23, como los tipos primitivos en patrones, las clases declaradas implícitamente, los elementos "body" flexibles de los constructores, los comentarios sobre la documentación de markdown, etc."

Para obtener más información sobre Java y su ecosistema global, visita:

  • java: portal oficial para el aprendizaje de Java
  • java: noticias y opiniones de los miembros del equipo Java de Oracle
  • Java YouTube: canal oficial de Java en YouTube con videos de aprendizaje de Java

Recursos adicionales

Información de contacto

Drew Smith

Oracle
+1.415.336.1103

Acerca de Oracle

Oracle ofrece conjuntos integrados de aplicaciones y una infraestructura autónoma y segura en Oracle Cloud. Para más información sobre Oracle (NYSE: ORCL), visítanos en www.oracle.com.

Exención de responsabilidad de producto futuro

El propósito del texto anterior es esbozar la línea general de nuestros productos. Solo se ha redactado con fines informativos y no se debe incorporar a ningún contrato. No representa ningún compromiso de entrega de material, código o funcionalidad, y no se debe utilizar como la base para tomar decisiones de compra. El desarrollo, el lanzamiento, los plazos y los precios de cualquier característica o funcionalidad descrita para los productos de Oracle puede cambiar y queda a la entera discreción de Oracle Corporation.

Marcas registradas

Oracle, Java, MySQL y NetSuite son marcas registradas de Oracle Corporation. NetSuite fue la primera empresa en la nube que inició la nueva era de la computación.