"

Java: confira as novidades da linguagem queridinha dos devs

O Java 18 foi lançado recentemente, com diversas melhorias de desempenho e estabilidade. Descubra como funciona a versão mais recente e os seus 9 aprimoramentos!

Confira as novidades do Java 18

Que Java é a principal linguagem de programação e plataforma de desenvolvimento utilizada no mundo, com certeza você já sabe. Mas e que ela pode ser empregada em diversos aparelhos e leva o título de principal linguagem para a criação de aplicativos na produção Android, você sabia?

Versátil, com Java é possível adaptar um programa a uma rápida escalabilidade de usuários, assim como uma retrocompatibilidade, já que o código da versão antiga continua sendo reconhecido nas atuais. Além disso, ela reduz custos e prazos de desenvolvimento, impulsiona a inovação e aprimora os serviços de aplicativos. Só vantagens, não é mesmo?

Não é à toa que milhões de desenvolvedores executam mais de 51 bilhões de Java Virtual Machines em todo o planeta, sendo a plataforma de desenvolvimento preferida das empresas e devs.

E, em setembro de 2021, a Oracle anunciou a disponibilidade do Java 17, até então a versão mais recente da plataforma de suporte de longo prazo (LTS). Mas, em março deste ano, mais rápidos que o Flash, eles já disponibilizaram a nova versão Java 18.

Noticias sobre o Java 18

Mas, e aí, está curioso(a) para saber quais foram as implementações? Então acompanhe esse artigo e fique por dentro das novidades! E fique tranquilo (a) que falaremos das duas, caso você não tenha conseguido acompanhar o primeiro lançamento.

O que há de novo no Java 17?

A versão do Java 17 oferece novos recursos que melhoram o desempenho, estabilidade e segurança, bem como 14 JEPs (JDK Enhancement Proposals), que otimizam a linguagem e a plataforma Java para ajudar os devs a serem mais produtivos.

Essa versão, sob a cadência de lançamento de seis meses do Java, foi o resultado de uma ampla colaboração entre engenheiros da Oracle e programadores que fazem parte da comunidade mundial de desenvolvedores Java, por meio da OpenJDK Community e do Java Community Process (JCP).

Essa variação, e as futuras do JDK, têm como objetivo simplificar o licenciamento e os direitos do Java. Fornecidos sob uma licença gratuita para uso de até um ano após o lançamento do próximo, o LTS.

Com suporte de longo prazo para clientes e da assinatura Oracle LTS e Java SE, os usuários podem migrar para o Java 17, dispondo de atualizações de segurança, desempenho e correção de bugs até setembro de 2029.

Noticias sobre o Java 18.

Essas mudanças oferecem, às organizações, mais flexibilidade no gerenciamento da complexidade do desenvolvimento e

Construída com base em inovações contínuas que atendem às necessidades em evolução dos desenvolvedores, a plataforma, para acelerar a adesão na nuvem, incluiu também o Oracle Java Management Service, que ajuda as organizações a gerenciar os tempos de execução e aplicativos Java no local ou em qualquer nuvem.

Aprimoramentos do Java 17.

O que há de novo no Java 18?

Agora, vamos falar da última versão: Java 18 (Oracle JDK 18). Lançada em 22 de março deste ano, ela oferece muitas novidades de desempenho, estabilidade e segurança.

O Java Development Kit (JDK) traz nove atualizações e melhorias com JDK Enhancement Proposals (JEPs). Desde a capacidade de adicionar trechos de código na documentação da API Java, simplificando a adição de código-fonte de amostra na documentação da API, até o Simple Web Server, para prototipagem e teste.

Além disso, os devs podem explorar dois módulos de incubação: o Vector API e o Foreign Function and Memory API, além do recurso de visualização: Pattern Matching for Switch.

Assim como na versão 17, o Java 18 também possui o Java Management Service (JMS), serviço nativo da Oracle Cloud Infrastructure (OCI), que fornece as informações necessárias para gerenciar implementações Java em toda a empresa, inclusive para cargas de trabalho OCI e assinantes Java SE.

As mudanças no Java 18 são:

Atualizações e melhorias nas bibliotecas:

  • JEP 400 (UTF-8 por padrão): define UTF-8 como o conjunto de caracteres padrão das APIs Java, fazendo com que as APIs que dependem do conjunto de caracteres-padrão se comportem de forma consistente em todas as implementações, sistemas operacionais, localidades e configurações;
  • JEP 408 (Servidor Web Simples): uma ferramenta de linha de comando e API para iniciar um servidor web mínimo que serve apenas arquivos estáticos. Esta ferramenta será útil para prototipagem, codificação ad-hoc e propósitos de teste, particularmente em contextos educacionais;
  • JEP 416 (Reimplementar Core Reflection com Method Handles): reimplementa java.lang.reflect. Method, Constructor e Field sobre os handles de método java.lang.invoke. O método manipula o mecanismo subjacente para reflexão, reduz o custo de manutenção e desenvolvimento das APIs java.lang.reflect e java.lang.invoke;
  • JEP 418 (SPI de resolução de endereço de Internet): define uma interface de provedor de serviço (SPI) para resolução de nome e endereço de host, para que java.net.InetAddress possa usar soluções diferentes da plataforma integrada.

Ferramentas:

  • JEP 413 (trechos de código JEP na documentação da API Java): introduz a tag @snippet para o Doclet padrão do JavaDoc para simplificar a inclusão de código-fonte de exemplo na documentação da API.

Visualização e incubadoras para versões posteriores do JDK:

  • JEP 417 (Vector API - terceira incubadora): fornece uma API para desenvolvedores alavancarem de forma confiável arquiteturas de CPU que fornecem extensões vetoriais escaláveis. Isso leva a um desempenho superior em comparação com cálculos equivalentes em processadores não estendidos;
  • JEP 419 (função estrangeira e API de memória - segunda incubadora): permite que programas Java inter operem com código e dados fora do tempo de execução. A API permite que programas Java chamem bibliotecas nativas e processem dados resultantes sem a fragilidade e as armadilhas de JNI;
  • JEP 420 (correspondência de padrões para switch - segunda visualização): aprimora a linguagem de programação com correspondência de padrões para expressões e instruções de switch, junto a extensões para a linguagem de padrões. Estendendo essas correspondências, permite, assim, que uma expressão seja testada em vários modelos, cada um com uma ação específica, para que consultas complexas orientadas a dados possam ser expressas de forma concisa e segura.

Programas Java para versões futuras:

  • JEP 421 (finalização obsoleta para remoção): a finalização permanece habilitada por padrão por enquanto, mas pode ser desabilitada para facilitar o teste. Em uma versão futura, ela será desabilitada por padrão e, em uma versão posterior, removida. Os mantenedores de bibliotecas e aplicativos que dependem da finalização devem considerar a migração para outras técnicas de gerenciamento de recursos, como a instrução try-with-resources statement e limpadores.

A empresa tem lançado inúmeros recursos em curto prazo, o que permite que aos desenvolvedores e desenvolvedoras ter previsibilidade, gerenciando a adoção das inovações, conforme o fluxo constante de mudanças esperadas.

Não se esqueça das diferenças entre Java e JavaScript

Quem está iniciando carreira em programação ou começando sua jornada nesse universo, ainda pode ter algumas dúvidas em relação à diferença entre os códigos Java. O ponto mais importante a ser esclarecido é: Java e JavaScript, de parecido, só tem o nome.

As duas linguagens, por terem a grafia similar, costumam causar muitas confusões sobre alguma possível relação entre elas. Mas ambas são escritas, construídas e executadas de maneiras diferentes. Além disso, existe uma grande diferença no que diz respeito ao que cada linguagem é capaz de fazer: o Java é usado em diferentes lugares e situações, incluindo softwares e aplicativos. Já o JavaScript é utilizado principalmente para tornar as páginas da web (HTML) mais interativas e dinâmicas.

E, agora que você está familiarizado(a) com as novidades, que tal desenvolver ainda mais sua carreira? E a Digital House pode ajudar você nessa jornada. Com o curso de Desenvolvimento Web Full Stack, que capacita o(a) aluno(a) a criar sites e sistemas web, utilizando diferentes linguagens de programação. Com aulas online, 100% ao vivo e ministradas por professores especialistas que estão no mercado. Inscreva-se agora mesmo e garanta o seu futuro profissional!

E-Book: Guia Full Stack Developer. Descubra a jornada de um dev full stack. Baixe agora!