Java

Novos recursos do Java 11

Novos recursos do Java 11
A Oracle lançou recentemente o Java Development Kit 10 (JDK 10), e isso significa que o JDK 11 não está longe, de acordo com o novo ciclo de lançamento de seis meses da Oracle. Vejamos quais novos recursos você já pode esperar no JDK 11.

Coletor de lixo Epsilon

De acordo com a Proposta de Melhoria JDK (ou JEP) 318, o Epsilon é um coletor de lixo (GC) de baixa sobrecarga, cuja finalidade é lidar com a alocação de memória sem implementar qualquer mecanismo real de recuperação de memória.

O objetivo é “fornecer uma implementação de GC completamente passiva com um limite de alocação limitado e a menor sobrecarga de latência possível, às custas da pegada de memória e rendimento de memória”, afirmam os desenvolvedores de núcleo Java na proposta. “Uma implementação bem-sucedida é uma mudança de código isolada, não afeta outros GCs e faz mudanças mínimas no resto da JVM.”

Embora o Java já ofereça uma ampla escolha de implementações de GC altamente configuráveis, os desenvolvedores acreditam que é mais fácil manter uma implementação separada de GC para lidar com casos de uso específicos, como teste de desempenho, teste de pressão de memória, teste de interface VM, trabalhos de vida extremamente curta , melhorias de latência de última gota ou melhorias de taxa de transferência de última gota, do que empilhar outra opção de configuração na implementação de GC existente.

Sintaxe de variável local para parâmetros Lambda

Java 10 introduziu a inferência de tipo de variável local para reduzir o detalhamento associado à gravação de código Java e o Java 11 o expande para permitir var a ser usado ao declarar os parâmetros formais de expressões lambda digitadas implicitamente, conforme declarado em JEP 323, intitulado Sintaxe de variável local para parâmetros Lambda.

Como tal, em vez de escrever:

(var x, var y) -> x.processo (y)

Será possível escrever simplesmente:

(x, y) -> x.processo (y)

A uniformidade em si não é o único benefício da sintaxe de variável local para parâmetros lambda. Outro benefício é que se tornará possível aplicar modificadores a variáveis ​​locais e formais lambda sem perder a brevidade.

Constantes de arquivo de classe dinâmica

O JEP 309 estende o formato de arquivo de classe Java para suportar um novo formulário de pool constante, CONSTANT_Dynamic, a fim de reduzir o custo e a interrupção da criação de novas formas de constantes de arquivo de classe materializáveis. Assim como ligar um invocado dinâmico chamar o site delegates linkage para um método de bootstrap, então carregará um CONSTANT_Dynamic delegar a criação a um método bootstrap.

De acordo com os desenvolvedores de núcleo de Java, a nova forma de pool constante oferecerá aos designers de linguagem e implementadores de compilador opções mais amplas de expressividade e desempenho. “Constantes mais ricas, mais flexíveis e altamente tipadas removem a fricção do desenvolvimento de protocolos invocados dinâmicos, o que, por sua vez, facilita o movimento da lógica complexa do tempo de execução para o tempo de ligação, melhorando o desempenho do programa e simplificando a lógica do compilador.”

O que não vai chegar ao Java 11

Apesar dos recursos descritos acima, o Java 11 será realmente mais enxuto do que o Java 10 porque está configurado para perder CORBA (Common Object Request Broker Architecture), módulos Java EE e JavaFX, um conjunto de pacotes gráficos e de mídia que permite aos desenvolvedores projetar, criar, testar, depurar e implantar aplicativos rich client.

CORBA é o padrão aberto para computação heterogênea e foi descontinuado, junto com os módulos Java EE, no Java SE 9. Versões independentes de módulos Java EE ainda estarão disponíveis em sites de terceiros, mas a Oracle não terá mais que manter duas implementações separadas: uma em Java SE e outra em Java EE.

Como alterar o ponteiro do mouse e tamanho do cursor, cor e esquema no Windows 10
O ponteiro do mouse e o cursor no Windows 10 são aspectos muito importantes do sistema operacional. Isso também pode ser dito para outros sistemas ope...
Mecanismos de jogos gratuitos e de código aberto para o desenvolvimento de jogos Linux
Este artigo cobrirá uma lista de mecanismos de jogo gratuitos e de código aberto que podem ser usados ​​para desenvolver jogos 2D e 3D no Linux. Exist...
Tutorial de Shadow of the Tomb Raider para Linux
Shadow of the Tomb Raider é a décima segunda adição à série Tomb Raider - uma franquia de jogos de ação e aventura criada pela Eidos Montreal. O jogo ...