Comunicado à imprensa

Oracle lança o Java 21 e amplia o roteiro de suporte

A nova versão apresentada no Oracle CloudWorld oferece 15 propostas de aprimoramento do JDK para melhorar a linguagem Java e aperfeiçoar o desempenho, a estabilidade e a segurança da plataforma

As extensões do roteiro de suporte de longo prazo permitem que os clientes realizem suas migrações em seu próprio ritmo

Oracle CloudWorld, Las Vegas—19 de Setembro de 2023

A Oracle anunciou hoje a disponibilidade do Java 21, a versão mais recente da linguagem de programação e plataforma de desenvolvimento número um do mundo. O Java 21 (Oracle JDK 21) oferece milhares de melhorias de desempenho, estabilidade e segurança, incluindo aprimoramentos na plataforma que ajudarão os desenvolvedores a aumentar a produtividade e impulsionar a inovação e o crescimento em suas organizações. A Oracle estará apresentando os recursos mais recentes do Java 21 no Oracle CloudWorld, que acontece esta semana (18 a 21 de setembro) em Las Vegas, e online em [Insert Link].

“O Java continua a ser a linguagem e a plataforma preferidas para o desenvolvimento de aplicações robustas, escaláveis e seguras usadas por organizações e milhões de indivíduos em todo o mundo”, disse Georges Saab, vice-presidente sênior da Oracle Java Platform e presidente do conselho administrativo do OpenJDK. “As novas melhorias no Java 21 permitem que os desenvolvedores criem aplicações melhores ainda mais rápido do que antes. Além disso, o suporte comercial estará disponível por pelo menos oito anos para permitir que os clientes realizem a migração em seu próprio ritmo.”

O mais recente Java Development Kit (JDK) fornece atualizações e melhorias com 15 JEPs (JDK Enhancement Proposals ou Propostas de Melhoria do JDK). O JDK 21 oferece aprimoramentos de linguagem do projeto OpenJDK Amber (modelos de string, padrões de registro, correspondência de padrões para switch, padrões, variáveis e classes sem nome e métodos principais de instância); melhorias do Panama Project (função estrangeira e API de memória e API de vetor); recursos relacionados ao Project Loom (threads virtuais, valores com escopo e simultaneidade estruturada); atualizações de desempenho (ZGC geracional); e recursos de manutenção e descontinuação (descontinuar a porta x86 de 32 bits para remoção e preparar para proibir o carregamento dinâmico de agentes).

“Apesar de tantas linguagens em circulação, o Java ainda está em toda parte hoje”, disse Stephen O'Grady, analista principal e cofundador da RedMonk. “À medida que o mundo evolui, a capacidade de adaptação do Java ajudará a continuar a desempenhar um papel fundamental na oferta de valor aos desenvolvedores.”

A Oracle oferecerá suporte de longo prazo para o Java 21 por pelo menos oito anos. Esse período de suporte estendido dá às organizações flexibilidade para manter as aplicações em produção por mais tempo com manutenção mínima e, eventualmente, migrar em seus próprios termos. Com base no feedback dos clientes e no uso no ecossistema Java, a Oracle também anunciou que o suporte de longo prazo para o Java 11 foi estendido até pelo menos janeiro de 2032, fornecendo pelo menos mais oito anos de suporte e atualizações da Oracle.

Atualizações significativas entregues no Java 21:

Recursos do Project Loom

  • JEP 444: Threads Virtuais: Simplifica significativamente o processo de desenvolvimento, manutenção e observação de aplicações simultâneas de alto rendimento, introduzindo threads virtuais leves na plataforma Java. Ao permitir que os desenvolvedores solucionem facilmente problemas, depurem e criem perfis de aplicações simultâneas e as dimensionem com ferramentas e técnicas de JDK existentes, as threads virtuais ajudam a acelerar o desenvolvimento de aplicações.
  • JEP 446: Valores com Escopo (prévia): Permite o compartilhamento de dados imutáveis dentro e entre threads. Isso ajuda a aumentar a facilidade de uso, a compreensibilidade, a robustez e o desempenho dos projetos dos desenvolvedores.
  • JEP 453: Simultaneidade Estruturada (prévia): Simplifica a programação simultânea ao introduzir uma API para simultaneidade estruturada, que ajuda a promover um estilo de programação que pode eliminar riscos comuns decorrentes de cancelamento e desligamento – como vazamentos de thread e atrasos de cancelamento – e melhora a observabilidade do código simultâneo. Isso ajuda os desenvolvedores a simplificar o tratamento e o cancelamento de erros, melhorar a confiabilidade e também a observabilidade.

Atualizações de desempenho

  • JEP 439: ZGC Geracional: Melhora o desempenho da aplicação ao estender o Z Garbage Collector (ZGC) para manter gerações separadas para objetos novos e antigos. O ZGC geracional ajuda a melhorar a produtividade do desenvolvedor, reduzindo a sobrecarga da memória heap necessária e da CPU de coleta de lixo para aplicações, além de reduzir os riscos de paralisações de alocação.

Melhorias e atualizações na linguagem

  • JEP 430: Modelos de String (prévia): Simplifica o desenvolvimento de programas Java, facilitando a expressão de strings que incluem valores calculados em tempo de execução, e melhora a segurança dos programas que compõem strings a partir de valores fornecidos pelo usuário e os transmitem para outros sistemas. Além disso, a legibilidade de expressões que misturam texto e expressões é aprimorada, e valores não-string calculados a partir de texto literal e expressões incorporadas podem ser criados sem a necessidade de transitar por uma representação de string intermediária. Isso ajuda a aumentar a produtividade do desenvolvedor, tornando a linguagem Java mais legível, de fácil escrita e manutenção.
  • JEP 440: Padrões de Registro (terceira prévia): Aprimora a linguagem Java ao estender a correspondência de padrões para desestruturar instâncias de classes de registro, bem como ao permitir a adição de padrões aninhados. Isso permite que os desenvolvedores ampliem a correspondência de padrões para consultas de dados mais sofisticadas e combináveis, o que ajuda a aumentar a produtividade.
  • JEP 441: Correspondência de Padrões para Switch: Expande a expressividade e a aplicabilidade de expressões e instruções de switch, permitindo que padrões apareçam em labels de casos. Além disso, a segurança das instruções de switch é aumentada ao exigir que as instruções de switch padrão cubram todos os valores de entrada possíveis, e todas as expressões e instruções de switch existentes possam continuar a ser compiladas sem alterações e executadas com semântica idêntica. Isso ajuda os desenvolvedores a simplificar e aumentar a confiabilidade de seus projetos, tornando a linguagem Java mais semântica para que consultas complexas orientadas por dados possam ser expressas de forma concisa e segura.
  • JEP 443: Padrões e Variáveis Sem Nome (prévia): Aprimora a linguagem Java ao permitir que padrões sem nome correspondam a um componente de registro sem indicar o nome ou tipo do componente, bem como variáveis sem nome que podem ser inicializadas, mas não usadas. Isso ajuda a simplificar o processo de desenvolvimento, aumentando a legibilidade dos padrões de registro e melhorando a capacidade de manutenção de todo o código.
  • JEP 445: Classes Sem Nome e Métodos Principais de Instâncias (prévia): Ajuda a simplificar e melhorar a acessibilidade da linguagem Java para que os educadores possam introduzir conceitos de programação de maneira gradual. Ao evitar a introdução de um dialeto separado do Java para iniciantes e de um outro conjunto de ferramentas para iniciantes, os programas dos alunos podem ser compilados e executados com as mesmas ferramentas que compilam e executam qualquer programa Java, ajudando os alunos a escrever programas básicos de maneira concisa e a desenvolver seus códigos com elegância à medida que suas habilidades aumentam. Isso ajuda a melhorar a produtividade dos alunos desenvolvedores, permitindo que eles escrevam seus primeiros programas sem a necessidade de compreender os recursos da linguagem projetados para programas grandes.

Recursos prévios do Project Panama

  • JEP 434: Função Estrangeira & API de Memória (terceira prévia): Introduz uma API para permitir que programas Java interoperem com código e dados fora do tempo de execução do Java. Ao invocar com eficiência funções estrangeiras (ou seja, código fora da Java Virtual Machine [JVM]) e ao acessar com segurança a memória externa (ou seja, memória não gerenciada pela JVM), a nova API permite que programas Java chamem bibliotecas nativas e processem dados nativos sem exigir a interface nativa do Java. Isso aumenta a facilidade de uso, a flexibilidade, o desempenho e a segurança para os desenvolvedores.
  • JEP 448: API de Vetor (sexta incubadora): Introduz uma API para expressar cálculos vetoriais que são compilados de forma confiável em tempo de execução para instruções vetoriais em arquiteturas de CPU suportadas. Isso ajuda os desenvolvedores a melhorar o desempenho de seus projetos, fornecendo-lhes acesso a uma API que é capaz de expressar de forma clara e concisa uma ampla gama de cálculos vetoriais.

A versão Java 21 é o resultado de uma extensa colaboração entre engenheiros da Oracle e outros membros da comunidade mundial de desenvolvedores Java por meio do OpenJDK e do Java Community Process (JCP). Além das novas melhorias, o Java 21 tem suporte do Java Management Service (JMS) – um serviço nativo da Oracle Cloud Infrastructure (OCI) – que fornece um console e um painel unificados para ajudar as organizações a gerenciar ambientes de execução e aplicações Java on-premises ou em qualquer nuvem. Para saber mais sobre os recursos do Java 21, leia o post na íntegra no blog do Java 21.

Apoiando o ecossistema Java global com inovação na nuvem

Java oferece desempenho, eficiência e inovação ideais quando implementado na nuvem na OCI, e a OCI é a primeira nuvem de hiperescala a oferecer suporte ao Java 21. Os clientes obtêm uma ampla gama de benefícios para toda a organização ao executar o Java na OCI, incluindo custos operacionais mais baixos, maior desempenho sem custo adicional e a capacidade de modernizar aplicações Java existentes ou criar novas usando os recursos mais recentes. Oracle Java SE, Oracle GraalVM e Java SE Subscription Enterprise Performance Pack estão disponíveis gratuitamente na OCI, permitindo que os desenvolvedores criem e implementem aplicações que são executadas de forma mais rápida, melhor e com custo-benefício otimizado.

A Oracle Java Universal SE Subscription é uma oferta pré-paga que oferece aos clientes o melhor suporte da categoria, incluindo suporte de triagem para todo o seu portfólio Java, direito ao GraalVM, ao Java SE Subscription Enterprise Performance Pack, acesso a recursos avançados do Java Management Service e flexibilidade para atualizar no ritmo dos seus negócios. Isso ajuda as organizações de TI a gerenciar a complexidade, conter custos e reduzir riscos de segurança.

A comunidade Java adota o Java 21

“O Java 21 é um dos lançamentos mais significativos, pois as threads virtuais irão impactar a forma como desenvolvemos e implementamos aplicações assíncronas, de microsserviços a aplicações corporativas”, disse o Dr. Venkat Subramaniam, fundador da Agile Developer, Inc. Com esse esforço, as aplicações dos desenvolvedores podem ser dimensionadas para suportar um grande número de operações de E/S e chamadas de serviço sem provocar uma demanda indevida de recursos. O aumento da escala com custos reduzidos é uma grande vitória para as organizações que contam com o Java na produção.”

“Estou entusiasmado com o recurso de ‘classes sem nome e métodos principais de instância’ no Java 21”, disse Barry Burd, professor da Drew University. “Nos meus cursos introdutórios, os alunos podem começar de forma rápida e fácil, sem confusão ou alarde. Em meus livros, posso apresentar exemplos completos sem código boilerplate. E a melhor parte é a forma como esses novos recursos são sincronizados com a filosofia de design abrangente do Java. Classes sem nome estão se juntando a seus primos de pacotes e módulos sem nome. E também é compatível com versões anteriores."

“O recurso de coleções sequenciadas no Java 21 é um ótimo complemento para a comunidade de desenvolvedores. Os desenvolvedores não precisam mais se preocupar em confiar acidentalmente na ordem dos encontros em um teste JUnit, apenas para que ele falhe no servidor de compilação, na atualização ou em outro lugar”, disse Jeanne Boyarsky, Java Champion. “Com coletas sequenciadas, essa ordem será definida, o que significa que não haverá mais surpresas.”

Expandindo o Dev.java com o Java Playground e contribuições da comunidade

Dev.java é o site oficial para desenvolvedores Java e hoje estamos anunciando a adição de um Java Playground, bem como novas contribuições da comunidade ao catálogo de conteúdo.

O Java Playground é um sandbox online que permite aos usuários digitar e executar pequenos trechos de código Java sem a necessidade de um tempo de execução local ou IDE. Os desenvolvedores agora podem experimentar novos recursos do Java 21 imediatamente, tudo em um navegador com tecnologia da OCI.

O Dev.java tem centenas de tutoriais de alta qualidade para todos os níveis de habilidade, de autoria da equipe Java da Oracle. Agora, o Dev.java também está aceitando contribuições da comunidade por meio de um novo repositório público dentro da organização Java GitHub,

Os desenvolvedores já podem encontrar contribuições da comunidade de especialistas do setor, como o Dr. Venkat Subramaniam, Cay Horstmann, Jeanne Boyarsky, Heinz Kabutz, Paul Anderson e Gail Anderson.

Para saber mais sobre o Java e seu ecossistema global, visite:

  • Dev.java: O portal oficial para aprender Java
  • Inside.java: Notícias e opiniões dos membros da equipe Java da Oracle
  • Java YouTube: O canal oficial do Java no YouTube para aprender Java com vídeos

Recursos adicionais

 

Informações para Contato

Drew Smith

Oracle
415.336.1103

Sobre a Oracle

A Oracle oferece conjuntos integrados de aplicações, além de uma estrutura segura e autônoma na Oracle Cloud. Para saber mais sobre a Oracle (NYSE: ORCL), acesse www.oracle.com.

Sobre o Oracle CloudWorld

O Oracle CloudWorld é a maior comemoração de clientes e parceiros da Oracle. Junte-se a nós para descobrir os insights necessários para enfrentar seus maiores desafios de negócios, desenvolver suas habilidades, conhecimento e conexões, e aprender mais sobre nossa infraestrutura de nuvem, banco de dados, aplicações e tecnologias para desenvolvedores, incluindo o Java , diretamente das pessoas que os criam e usam. Para se inscrever, ver apresentações, detalhes de sessões, notícias e muito mais, visite oracle.com/cloudworld ou oracle.com/news.

Isenção de responsabilidade de declaração de expectativas

As declarações contidas neste artigo relacionadas a planos, expectativas, crenças e intenções futuras da Oracle são "prospectivas" e estão sujeitas a riscos e incertezas materiais. Muitos fatores podem afetar as expectativas atuais e os resultados reais da Oracle e podem fazer com que os resultados reais sejam diferentes materialmente. Uma discussão desses fatores e outros riscos que afetam os negócio da Oracle está contida nos registros da Oracle na Comissão de Valores Mobiliários (SEC), incluindo os relatórios mais recentes do formulário 10-K e do formulário 10-Q com o cabeçalho “Fatores de risco”. Esses registros estão disponíveis no site da SEC ou no site da Oracle em http://www.oracle.com/investor. Todas as informações neste artigo foram atualizadas pela última vez em 19 de setembro de 2023, e a Oracle não se responsabiliza por corrigi-las de acordo com novos dados ou eventos.

Marcas registradas

Oracle, Java, MySQL e NetSuite são marcas registradas da Oracle Corporation. A NetSuite foi a primeira empresa de nuvem, inaugurando a nova era da computação em nuvem.