Oracle lança Java 20
- #Java
A Oracle lançou o Java 20, a mais recente versão da linguagem de programação e plataforma de desenvolvimento líder no mundo. O Java 20 traz milhares de melhorias de desempenho, estabilidade e segurança, incluindo aprimoramentos de plataforma que ajudarão os desenvolvedores a aumentar a produtividade e impulsionar a inovação em suas organizações.
A atualização mais significativa do Java 20 é o Projeto Loom, que apresenta Threads Virtuais e Concorrência Estruturada. Isso permitirá que os desenvolvedores escrevam, mantenham e observem aplicativos de alta vazão e concorrência com mais facilidade. As Threads Virtuais tornam o uso de threads muito mais eficiente, possibilitando a execução de milhares ou até milhões de threads em uma única JVM. Isso é particularmente importante para aplicativos de desempenho, Machine Learning e Deep Learning, pois esses aplicativos frequentemente exigem muitas threads para processar grandes quantidades de dados simultaneamente.
A Concorrência Estruturada ajuda os desenvolvedores a simplificar a programação multithread e torna mais fácil escrever aplicativos que lidam com tarefas simultâneas de forma confiável e previsível. Isso ajuda a melhorar a qualidade e a estabilidade dos aplicativos, o que é particularmente importante em aplicativos críticos. Isso é particularmente importante para setores atuais, como IoT, que frequentemente exigem muitas threads para processar grandes quantidades de dados simultaneamente.
Além do Projeto Loom, o Java 20 também apresenta melhorias de linguagem, como Record Patterns e Pattern Matching para Switch, e aprimoramentos do Projeto Panama para interconectar a Máquina Virtual Java (JVM) e o código nativo.
A Oracle continua entregando novos recursos Java a cada seis meses, proporcionando um fluxo constante de inovações, melhorias de desempenho, estabilidade e segurança. Isso ajuda a aumentar a prevalência do Java em organizações e indústrias de todos os tamanhos, e a manter a linguagem relevante e atualizada para os desenvolvedores de todo o mundo.
Oracle:
Language Updates and Improvements
JEP 432: Record Patterns (Second Preview): Enhances the Java language by allowing users to nest record patterns and type patterns to create a powerful, declarative, and composable form of data navigation and processing. This helps increase developer productivity by enabling them to extend pattern matching to allow for more sophisticated and composable data queries.
JEP 433: Pattern Matching for Switch (Fourth Preview): By extending pattern matching to switch, an expression can be tested against a number of patterns—each with a specific action—so that complex data-oriented queries can be expressed concisely and safely. Expanding the expressiveness and applicability of switch expressions and statements helps increase developer productivity.
Project Loom Preview/Incubator Features
JEP 429: Scoped Values (Incubator): Enables the sharing of immutable data within and across threads, which are preferred to thread-local variables – especially when using large numbers of virtual threads. This increases ease-of-use, comprehensibility, robustness, and performance.
JEP 436: Virtual Threads (Second Preview): Significantly streamline the process of writing, maintaining, and observing high-throughput, concurrent applications by introducing lightweight virtual threads to the Java Platform. By enabling developers to easily troubleshoot, debug, and profile concurrent applications with existing JDK tools and techniques, virtual threads helps accelerate application development.
JEP 437: Structured Concurrency (Second Incubator): Simplifies multithreaded programming by treating multiple tasks running in different threads as a single unit of work. This helps development teams streamline error handling and cancellation, improve reliability, and enhance observability.