Oracle lança o Java 20

Nova versão traz sete propostas de aprimoramento do JDK para aumentar a produtividade do desenvolvedor, melhorar a linguagem Java, aprimorar o desempenho, estabilidade e segurança da plataforma

Salvador, 27/03/2023 – A Oracle disponibiliza o Java 20, a versão mais recente da linguagem de programação e plataforma de desenvolvimento número um do mundo. O Java 20 (Oracle JDK 20) chega com milhares de melhorias em desempenho, estabilidade e segurança, incluindo aprimoramentos que ajudarão os desenvolvedores a aumentarem a produtividade e impulsionarem a inovação, bem como crescimento em suas empresas. A Oracle apresenta os recursos mais recentes do Java 20 durante o Java Developer Day que acontece durante o evento Oracle DevLive Level Up, entre os dias 20 e 23 de março, em Redwood Shores, Califórnia, e online.

“Por mais de 25 anos, Java permitiu que os desenvolvedores projetassem e desenvolvessem aplicações robustas, escaláveis, seguras de última geração,” disse Georges Saab, vice-presidente sênior de Desenvolvimento da Plataforma Java na Oracle e presidente do Conselho de Administração do OpenJDK. “As melhorias inovadoras no Java 20 refletem a visão e os esforços inestimáveis da comunidade global do Java durante toda a existência dessa linguagem. Com o suporte contínuo fornecido pela liderança em tecnologia Java na Oracle, junto à comunidade, o Java se tornou tão relevante quanto uma linguagem e plataforma contemporâneas que ajudam os desenvolvedores.”

O recém Java Development Kit (JDK) conta com atualizações e melhorias com sete JDK Enhancement Proposals (JEPs). Grande parte das atualizações traz recursos de acompanhamento com novas funcionalidades das versões anteriores.

O JDK 20 traz melhorias à linguagem do projeto Amber da OpenJDK (Record Patterns e Pattern Matching for Switch); no do Projeto Panama da OpenJDK para interconexão com a Java Virtual Machine (JVM) e códigos nativos (Funções Estrangeiras, API de memória e de vetores); além de recursos relacionados ao Projeto Project Loom (Scoped Values, Virtual Threads e Structured Concurrency), que simplificarão o processo de escrita, manutenção sobre aplicações adjacentes concorrentes de alto rendimento.

“Atualmente, as empresas enfrentam muita pressão para usar seus recursos com a maior eficiência possível. Toda essa pressão para os desenvolvedores que precisam procurar ferramentas que simplifiquem o desenvolvimento, permite as empresas alcançarem os objetivos de segurança e conformidade de TI”, disse Eric Hanselman, analista chefe, TMT, S&P Global Market Intelligence. “Os líderes em transformação digital destacam que estão mais focados em acelerar o tempo de comercialização1, e ganhar agilidade com ferramentas que podem ampliar as iniciativas de desenvolvimento de aplicações da empresa.”

A Oracle disponibiliza novos recursos de lançamento do Java a cada seis meses por meio de uma programação de lançamento previsível. Essa cadência fornece um fluxo constante de inovações ao mesmo tempo que traz melhorias contínuas no desempenho, estabilidade e segurança da plataforma, ajudando a aumentar a difusão da linguagem em organizações e setores de todos os tamanhos.

As atualizações mais relevantes do Java 20:

Melhorias e atualizações na linguagem
• JEP 432: Record Patterns (segunda visualização): melhora a linguagem Java permitindo que os usuários alinhem os padrões de registros e de tipos para criarem formulários de navegação e processamento de dados poderosos, declarativos e compostos. Isso ajuda a aumentar a produtividade do desenvolvedor, permitindo que eles ampliem a correspondência de padrões e deixem as consultas de dados ainda mais compostas e sofisticadas;
• JEP 433: Pattern Matching for Switch (quarta visualização): estende a correspondência de padrões para switch e permite que uma expressão seja testada em vários padrões, cada um com uma ação específica, para que consultas complexas orientadas a dados possam ser expressas de forma concisa e segura. Expandir a expressividade e a aplicabilidade de expressões e instruções switch ajuda a aumentar a produtividade do desenvolvedor.

Recursos de visualização/Incubação do Projeto Loom

• JEP 429: Scoped Values (incubadora): permite o compartilhamento de dados imutáveis dentro e entre threads, comportamento padrão para variáveis thread-local, especialmente quando existe uma grande quantidade de threads virtuais. Isso resulta em maior facilidade, compreensão, robustez e desempenho;
• JEP 436: Virtual Threads (segunda visualização): simplifica significativamente o processo de escrita, manutenção e observação de aplicações sobre aplicações adjacentes concorrentes de alto rendimento, através de threads virtuais à plataforma do Java. As threads virtuais ajudam a acelerar o desenvolvimento de aplicações, permitindo que os desenvolvedores resolvam problemas, depurem e perfilem aplicações concorrentes rapidamente com as ferramentas e técnicas já existentes no JDK;
• JEP 437: Structured Concurrency (segunda incubadora): simplifica a programação multithread, tratando diversas tarefas executadas em threads diferentes como se fossem uma única unidade de trabalho. Isso ajuda as equipes de desenvolvimento a simplificarem o tratamento e cancelamento de erros, melhorando a confiabilidade e observabilidade.

Recursos de visualização do Projeto Panama
• JEP 434: Foreign Function & Memory API (segunda visualização): permite que os programas em Java interoperem com códigos e dados de fora do ambiente de execução do Java. Ao invocar eficientemente funções estrangeiras (ou seja, código fora da Java Virtual Machine [JVM]) e ao acessar com segurança a memória estrangeira (ou seja, memória não gerenciada pela JVM), esse recurso permite que programas Java chamem bibliotecas nativas e processem dados nativos sem exigir a Java Native Interface. Isso aumenta a segurança, desempenho e a facilidade de uso;
• JEP 438: Vector API (quinta incubadora): expressa o processamento de vetores que se compilam com segurança no ambiente de execução de acordo com as instruções do vetor sobre arquiteturas de CPU suportadas. Isso aumenta o desempenho com relação aos processamentos escalares equivalentes.

A versão Java 20 é o resultado de uma ampla colaboração entre engenheiros da Oracle e membros da comunidade mundial de desenvolvedores Java por meio do OpenJDK e do Java Community Process (JCP). Além de novos aprimoramentos, o Java 20 é suportado pelo Java Management Service — um serviço nativo da Oracle Cloud Infrastructure (OCI) — que fornece um único painel de visualização para ajudar as organizações a gerenciar os tempos de execução e aplicações Java on-premises ou em qualquer nuvem.

Suporte aos usuários e ecossistema global do Java
Assinatura Universal do Oracle Java SE é uma oferta pré-paga que oferece aos clientes o melhor suporte, incluindo o de triagem para todo o seu portfólio em Java, com direito ao GraalVM Enterprise, ao Java SE Subscription Enterprise Performance Pack, acesso a recursos avançados do Java Management Service, além da flexibilidade de atualização conforme o crescimento dos negócios. Isso ajuda as empresas de TI a gerenciar a complexidade, conter custos e mitigar riscos de segurança. Além disso, Oracle Java SE, GraalVM Enterprise e Java SE Subscription Enterprise Performance Pack estão disponíveis gratuitamente na Oracle Cloud Infrastructure, permitindo que os desenvolvedores criem e implementem aplicativos que funcionam mais rápido, melhor e com custo-benefício imbatível na Oracle Cloud.

Para saber mais sobre Java e seu ecossistema global, visite:
• Dev. java: O portal oficial para estudar e aprender Java
• Inside. java: Novidades e opiniões de membros da Equipe Java na Oracle
• Java YouTube: O canal oficial do Java no YouTube com vídeos instrucionais sobre Java

Últimas notícias