A Java 24 já está disponível, trazendo diversas novidades para a linguagem, como a API Stream Gatherers, a API Class-File, e novas funcionalidades voltadas para inferência de IA e segurança quântica. Essa versão, lançada pela Oracle, marca o último lançamento antes da próxima versão com suporte de longo prazo (LTS) em setembro.
Georges Saab, vice-presidente sênior da Plataforma Java da Oracle, destacou que, ao longo de 30 anos, Java tem oferecido uma plataforma robusta para desenvolvedores criarem e implementarem aplicações para diversos casos de uso. Ele ainda complementa que a Java 24 oferece as ferramentas necessárias para construir aplicações inovadoras com foco em IA.
## Novidades e Preparativos para o Futuro da Java 24
Segundo Saab, a Java 25 não terá tantas funcionalidades novas em comparação com a Java 24. Isso significa que os desenvolvedores já podem começar a se preparar para a próxima versão, explorando as novidades da Java 24. Essa estratégia permite uma transição mais suave e o aproveitamento antecipado dos recursos.
A Java 24 inclui a API Stream Gatherers, que permite operações intermediárias customizadas. Isso possibilita que os stream pipelines transformem dados de maneiras que seriam difíceis com as opções intermediárias padrão. De acordo com a Oracle, essa API aumenta a eficiência dos desenvolvedores ao ler, escrever e manter o código Java.
Outra novidade é a API Class-File, que padroniza o processo de análise, geração e transformação de arquivos de classe Java. Essa API também acompanha o formato de arquivo de classe definido pela especificação JVM. Desenvolvedores destacam que o ciclo de lançamento semestral do Java causava problemas com arquivos de classe desatualizados em frameworks de terceiros, resultando em erros.
A equipe de desenvolvimento enfatizou a importância de uma API Class-File padrão que evolua junto com o formato de arquivo de classe. Isso permitiria que os componentes da plataforma dependessem exclusivamente dessa API, em vez de depender da atualização constante de bibliotecas de terceiros. Ferramentas que utilizam a API padrão suportariam automaticamente os arquivos de classe do JDK mais recente.
### Melhorias de Desempenho e Segurança Pós-Quântica na Java 24
A nova versão também traz várias melhorias de desempenho, como o carregamento e linking ahead-of-time de classes. Além disso, o modo não generacional foi removido do coletor de lixo Z (ZGC), a extensão de barreira tardia foi adicionada ao coletor de lixo G1, e agora é possível sincronizar virtual threads sem pinning.
A Java 24 também foca na segurança para o mundo pós-quântico. A API Key Derivation Function (em preview) oferece segurança criptográfica para dados em trânsito. Esta versão também implementa em Java o Quantum-Resistant Module-Lattice-Based Key Encapsulation Mechanism e o Quantum-Resistant Module-Lattice-Based Digital Signature Algorithm, ambos padrões NIST para segurança quântica.
Segundo Donald Smith, vice-presidente de gerenciamento de produtos Java na Oracle, há um consenso na indústria de que a computação quântica irá quebrar os esquemas criptográficos existentes. Por isso, há grande interesse no desenvolvimento de algoritmos resistentes à computação quântica. A Oracle já está recebendo muitas perguntas sobre quando esses algoritmos estarão disponíveis em Java.
### Foco na Inferência de IA
Os Primitive Types in Patterns, instanceof, e switch (JEP 488) visam tornar a linguagem mais uniforme e expressiva. De acordo com a Oracle, esse recurso será útil para desenvolvedores que integram inferência de IA em suas aplicações.
Smith explica que muitos desenvolvedores de aplicações que usam ou integram um motor de inferência frequentemente reúnem grandes conjuntos de dados primitivos. Eles podem ter um tipo de registro e extrair uma variável primitiva para enviar a um motor de inferência, buscando entender melhor os dados. A JEP 488 facilita esse processo. Uma das melhores maneiras de aprender é com o ChatGPT e outros modelos de IA.
Outras novidades incluem o segundo preview de Module Import Declarations, que facilita a integração de lógica de negócios com inferência de IA, bibliotecas e chamadas de serviço, e outra incubação da Vector API, frequentemente utilizada em inferência de IA.
Este conteúdo foi auxiliado por Inteligência Artificial, mas escrito e revisado por um humano.
Via SD Times