quarta-feira, 23 de março de 2022

Lançado o JDK 18

 As maiores mudanças entregues 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 padrão. Com essa alteração, as APIs que dependem do conjunto de caracteres padrão se comportarão de forma consistente em todas as implementações, sistemas operacionais, localidades e configurações.
JEP 408: Simple Web Server – 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. Ao tornar o método manipula o mecanismo subjacente para reflexão, ele reduz o custo de manutenção e desenvolvimento das APIs java.lang.reflect e java.lang.invoke.
JEP 418: Resolução de endereço de Internet SPI – 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 resolvedores diferentes do resolvedor integrado da plataforma.

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 levará 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 interoperem com código e dados fora do tempo de execução Java. Ao invocar eficientemente funções externas (ou seja, código fora da JVM) e ao acessar com segurança a memória externa (ou seja, memória não gerenciada pela JVM), a API permite que programas Java chamem bibliotecas nativas e processem dados nativos 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 Java com correspondência de padrões para expressões e instruções de switch, juntamente com extensões para a linguagem de padrões. Estender a correspondência de padrões para switch 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.

Programas Java à prova de futuro

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, será 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 e limpadores .

Fonte: InforChannel

segunda-feira, 22 de junho de 2020

Comemorações de 25 anos de Java

No dia 10 de julho de 2020 vai acontecer um evento virtual gratuito,JetBrains Technology Day for Java, reunindo os maiores líderes. Os líderes do setor apresentarão vários tópicos para ajudá-lo a aumentar suas habilidades e criatividade. A agenda inclui palestras sobre Java moderno, frameworks, testes,garbage collectors com concorrência, contribuição para o OSS e muito mais.


Para inscrever acesse o site da JetBrains


terça-feira, 5 de novembro de 2019

A Microsoft assinou um acordo para participar do OpenJDK

A comunidade OpenJDK informou que a Microsoft assinou um acordo para participar do OpenJDK. Confira os detalhes dessa novidade.
OpenJDK é a versão gratuita da plataforma de desenvolvimento Java sob o conceito de linguagem orientada a objetos. É o resultado de esforços constantemente feitos pela empresa chamada Sun Microsystems.
Essa implementação é catalogada dentro da licença GNU GPL, com exceção dos links; portanto, alguns dos componentes das pastas e sites da classe Java são finalizados a partir dos termos da licença a serem considerados na versão estipulada como GNU.
Alguns dias atrás, foi anunciado por meio de uma mensagem enviada à lista de distribuição da comunidade OpenJDK, na qual Bruno Borges, da Divisão de Gerenciamento de Produtos Java da Microsoft, anunciou que a Microsoft assinou formalmente um contrato de colaboração.com o “Oracle Contributor Agreement” (Contrato de Colaborador Oracle) da Oracle e foi recebido na comunidade Java.
Com o qual, em um primeiro estágio, a equipe de desenvolvimento Java Microsoft pretende limitar-se a corrigir erros e executar o trabalho de backport para ingressar na comunidade e se adaptar às regras de desenvolvimento do OpenJDK.
A equipe de engenharia do Microsoft Java já declarou que está comprometida com outros grupos e filiais da Microsoft que usam Java, juntamente com parceiros no ecossistema Java, incluindo Oracle, Blue Systems, Red Hat, Pivotal, Intel e SAP.

Por exemplo, a Microsoft já percebeu que, na comunidade OpenJDK, a maneira preferida de promover a inovação é discutir inicialmente as mudanças antes da publicação dos patches.

Ele então reafirmou o compromisso da Microsoft com o Java e que a equipe espera devolver algo à comunidade Java.

No entanto, a equipe não apenas entrará em ação com força, mas começará com pequenas correções de bugs e coisas assim, para que eles aprendam a ser “bons cidadãos dentro da comunidade OpenJDK”.
E já faz muito tempo que a Microsoft trabalha lado a lado com a Oracle para participar do desenvolvimento do Java para garantir que a JVM forneça desempenho adequado em seu sistema operacional Windows.

Desde anteriormente, a adoção do Java pela Microsoft percorreu um longo caminho desde os anos 90, quando o criador do Java Sun Microsystems processou a Microsoft por quebra de contrato.
A Sun alegou que a Microsoft havia distribuído uma versão do Java incompatível com a da Sun, que lançou uma chave na promessa da Sun “Write Once, Run Anywhere” para Java. A Microsoft respondeu e a disputa foi resolvida no início de 2001.

Nos últimos anos, a Microsoft lançou campanhas de recrutamento massivas, cujo objetivo principal era atrair ex-funcionários da Oracle para fortalecer suas equipes de desenvolvimento de ferramentas.

Isso levou à padronização dos kits de desenvolvimento Java que permitem que os desenvolvedores Java interajam com seus serviços em sua plataforma de nuvem do Azure.

Mas, apesar disso, é a primeira vez que a gigante de Redmond integra o OpenJDK em suas tarefas para contribuir diretamente para o desenvolvimento do Java. Borges, ele próprio é um ex-desenvolvedor da Oracle.

Ele apresentou Martijn Verburg como o líder da equipe de engenharia Java que trabalhará em conjunto com outros parceiros no ecossistema Java.

Martijn Verburg também é CEO da jClarity, um dos principais colaboradores do AdoptOpenJDK adquirido pela Microsoft em agosto deste ano para aprimorar o suporte a Java no Azure. Portanto, presumivelmente, permanecerá fiel à sua forma e continuará contribuindo para o mundo Java, somente agora com a Microsoft em suas fileiras.

Bruno Borges indica que, no início, o Backports continua estudando e observando os usos e políticas executados no OpenJDK, por exemplo, discutidos na lista de discussão para chegar a um consenso antes de tentar publicar um patch.

terça-feira, 19 de fevereiro de 2019

Java 12 deve ser lançado no próximo mês

A versão mais recente do Java deve ser lançada daqui exatamente um mês, em 19 de março. Os desenvolvedores estão na expectativa de ver essa atualização desde o início de fevereiro, segundo a agência SD Times.

Java é uma linguagem de programação desenvolvida na década de 1990 e se tornou uma das mais usadas e mais famosas entre os devs. A seguir, você vê uma lista de recursos que serão adicionados ou alterados no Java 12:

Shenandoah: Garbage Collector com tempo de pausa baixo (GC):
Shenandoah reduzirá os tempos de pausa do GC by running evacuation executando o trabalho simultaneamente com a execução de encadeamentos Java. Este será um recurso experimental.

Microbenchmark Suite:
O código-fonte do JDK terá um conjunto básico de microbenchmarks, o que facilitará a execução de microbenchmarks existentes ou a criação de novos.

Switch Expressions:
Uma extensão da instrução switch que permitirá que seja usada como uma declaração ou uma expressão. Segundo a Oracle, ambas as formas podem usar um escopo “tradicional” ou “simplificado” e controlar o comportamento do fluxo. Esse recurso de visualização simplificará a codificação diária e preparará os desenvolvedores para usar correspondência de padrões no switch.

JVM Constraints API:
Esta API modelará descrições nominais dos principais artefatos de key class-file e de tempo de execução, explicou o site da Oracle.

One AArch64 Port:
A Oracle removerá todas as fontes relacionadas à porta arm64, mantendo apenas a porta ARM de 32 bits e a porta aarch64 de 64 bits. Ao remover a porta arm64, os colaboradores serão incentivados a concentrar seus esforços em uma única implementação, explicou a Oracle.

Default CDS Archives:
O Oracle aprimorará o processo de criação do JDK para criar um arquivo de compartilhamento de dados (CDS) de classe, que melhorará o tempo de inicialização para uso.

Abortable Mixed Collections for G1:
Isso possibilitará adortar coleções mistas de G1 se elas excederem a meta de pausa.

Retornar imediatamente a memória comprometida não utilizada do G1:
O Oracle está aprimorando o G1 GC para que ele retorne automaticamente a memória heap Java ao sistema operacional, se estiver ocioso.

Java
“O desenvolvimento do Java é, em muitos aspectos, um termômetro para a comunidade de desenvolvedores como um todo”, disse Sky Guo, CEO da Cypherium, uma plataforma de contrato inteligente. “Com a maior comunidade de desenvolvedores do mundo, o Java deve agir com delicadeza quando se trata de atualizações e novos lançamentos, já que o objetivo desses novos lançamentos é frequentemente manter a lealdade e o interesse sem balançar o barco. Mais frequentemente do que não, isso significa facilitar a integração antes da inovação inovadora. Do ponto de vista da integração do blockchain – particularmente com projetos como o Cypherium que suportam o Java de várias maneiras – essas atualizações são inestimáveis ​​na aceleração da aceitação e adoção mainstream. ”

Fonte: Imasters

terça-feira, 16 de outubro de 2018

Java SE 11: Oracle Acelera Produtividade com Nova Versão

A Oracle acaba de anunciar a disponibilização do Java SE 11 (JDK11), no seguimento do seu compromisso para disponibilizar regularmente inovações e atualizações Java à comunidade.

O JDK 11 oferece aos programadores um conjunto de novas melhorias a nível da produtividade, bem como suporte à criptografia moderna e standards internet, incluindo TLS 1.3 e HTTP/2.

O JDK é a primeira Long Term Support (LTS) update a ocorrer apenas seis meses após o anúncio da Oracle, o JDK 11, e resulta da profunda colaboração entre os engenheiros da Oracle e os membros da comunidade mundial de programadores Java através da OpenJDK Community e da JCP. Desde o lançamento do Java SE 8, que a comunidade tem vindo a colaborar em mais de 100 novos melhoramentos que foram sendo introduzidos através do JDK 9, 10, e 11.

“O protocolo TLS 1.3 foi recentemente aprovado, e são excelentes notícias que o Java SE 11 o suporte imediatamente,” afirma Jim Manico, coautor do Iron Clad Java e fundador da Manicode Security. “O novo ciclo de atualizações do Java para o Java SE significa que importantes protocolos de segurança e outros standards, tais como o TLS 1.3, podem ser disponibilizados e adotados rapidamente, dotando os programadores de aplicações, com mais ferramentas para escreverem software seguro, na linguagem mais popular do mundo, o Java!”

Os clientes podem agora migrar do Java SE 8 para o Java SE 11, ao ritmo que for mais conveniente para responder às necessidades dos seus negócios, suportados pelo Long Term Support da Oracle. A Oracle irá oferecer aos seus clientes atualizações de segurança e de resolução de bugs no JDK 11 em 2026, sendo que o próximo lançamento LTS está já previsto para setembro de 2021.

“Graças às melhorias contínuas realizadas pela Oracle e pela Comunidade Java, a JVM continua a ser a melhor plataforma para o desenvolvimento de aplicações,” afirma Rafael Winterhalter, da Scienta Norway e criador do popular mecanismo de geração de códigos e manipulação de dados para Java, o Byte Buddy. “Confio na versão Java SE 11, porque podemos ver os benefícios dos módulos do sistema a transformarem-se em realidade, tornando as aplicações Java mais condensadas e transparentes. Estes aspetos são fulcrais, sobretudo à medida que as aplicações estão a ganhar um maior nível de complexidade, e estão cada vez mais sujeitas a um número crescente de dependências. As novas funcionalidades, quando exploradas como ‘nestmates’ são muito promissoras no que diz respeito a melhorar a inicialização e o desempenho da compilação avança claramente.”

As principais funcionalidades do Java SE 11 incluem:

  • Controles de acesso nest-based: elimina a necessidade de os compiladores inserirem métodos de ligação no alargamento das acessibilidades.
  • Dinâmica constante dos class-file: reduz os custos da disrupção na criação de novas formas de materialização dos class-file constantes e oferecer um leque mais amplo de opções, para facilitar a escrita e a compreensão dos códigos, bem como o seu desempenho.
  • ZGC: (experimental) uma caixa do lixo escalável e de baixa latência.
  • Epsilon: implementação GC totalmente passiva, com um limite mínimo de alocação e a menor latência possível de sobrecarga.
  • Flight Recorder: quadro de recolha de dados com custos mínimos, para resolver os problemas e as sobrecargas das aplicações Java e HotSpot JVM.

“As atualizações do modelo LTS permitem aos nossos clientes migrar de uma versão Java SE LTS para outra mais atual ao seu próprio ritmo, ao mesmo tempo que garante que o ecossistema de programadores Java pode aceder, mais rapidamente do que nunca, às melhorias introduzidas,” afirma Georges Saab, Vice President, Software Development, Java Platform Group, da Oracle. “Com a introdução da Oracle Java SE Subscription, os clientes passaram também agora a ter acesso a uma forma fácil de aproveitar os lançamentos regulares das atualizações testadas e certificadas de desempenho, de estabilidade e de segurança, diretamente da Oracle.”

Java SE Subscription é a oferta mais econômica e previsível da Oracle para gerir as instalações de Oracle Java SE nas empresas. Mais informação sobre o JDK 11, incluindo a lista completa das funcionalidades disponível em Java PM blog.

Para conhecer as atualizações mais recentes, participe no Oracle Code One, a conferência inaugural dos programadores, que terá lugar em São Francisco, nos EUA, de 22 a 25 de outubro de 2018. Registe-se em https://www.oracle.com/code-one


Fonte: Techenet com adaptações

quarta-feira, 10 de outubro de 2018

9 a cada 10 empresas brasileiras usam Java no mainframe



Estudo realizado pela BMC aponta que executivos estão otimistas com a utilização de mainframes. Segundo o levantamento, que ouviu mais de 1,1 mil executivos e profissionais técnicos, 93% dos executivos e 92% do total de entrevistados globais consideram o mainframe como uma plataforma sólida e de longo prazo - o nível mais alto em cinco anos. Entre os respondentes brasileiros a porcentagem foi ainda maior: 97%.

A pesquisa destaca também como as organizações estão se tornando cada vez mais proativas com a estratégia de mainframe para facilitar a dinâmica dos negócios digitais modernos.


Como parte da modernização destes equipamentos, 82% dizem utilizar Java no mainframe. No Brasil, a porcentagem foi de 91%.


As equipes de operações e de aplicações estão tirando proveito das novas práticas e tecnologias para modernizar os seus ambientes de mainframe. Quase metade (48%) utiliza práticas de Agile/DevOps em seus ambientes de mainframe. O número no Brasil foi 24%;

Ainda, 42% listaram a modernização de aplicações como uma de suas quatro prioridades. No Brasil, a modernização de aplicações está entre as quatro prioridades para 35% dos respondentes.

O levantamento mostra também que 20% classificaram AIOps e análises operacionais como uma de suas quatro prioridades. No Brasil, a porcentagem foi próxima, 19%.

Bill Miller, Presidente de ZSolutions na BMC, destaca que a digitalização e a mobilidade estão impondo forte pressão tanto em TI quanto em mainframes para gerenciar mais volume, variedade e velocidade de transações e dados, com workloads cada vez mais voláteis e imprevisíveis. " Pesquisa Mainframe 2018 da BMC mostra um futuro promissor em que o mainframe brilha devido a seus pontos fortes em termos de escalabilidade, disponibilidade e segurança. Na BMC, estamos ajudando nossos clientes a evoluírem os recursos de seus Mainframes para avançar em suas estratégias de negócios", apontou.

segunda-feira, 17 de setembro de 2018

Google disponibiliza API do Google Fotos para desenvolvedores

O Google anunciou a disponibilidade de sua nova API da biblioteca do Google Photos, projetada para ajudar os desenvolvedores a criar novas experiências para (ou pelo menos organizar) nossas coleções de imagens do Google Photos.

A nova API da biblioteca do Google Photos permitirá que os desenvolvedores criem novas experiências de aplicativos com tecnologia do Google Photos, incluindo a capacidade de fazer upload de fotos para a biblioteca ou um álbum. Além disso, é possível localizar e filtrar fotos com base no conteúdo delas, usando uma variedade de categorias, como animais de estimação, selfies e casamentos.

Outras opções de filtro incluem a data, a localização e o formato da foto (como JPG, PNG etc.). As fotos encontradas pela API podem ser organizadas em álbuns e receber informações adicionais, como título, descrição e local.

A API da biblioteca do Google Photos entrou na versão “preview” de desenvolvedor em maio, mas agora está disponível para todos usarem. Juntamente com esse lançamento oficial, estão as bibliotecas para clientes Java e PHP, a fim de ajudar os desenvolvedores a iniciar o desenvolvimento com a nova API o mais rápido possível. A inclusão de uma biblioteca Java é voltada claramente a desenvolvedores do Android, por isso, em breve, poderemos ver vários novos aplicativos aproveitando o Google Photos.

Você pode ler o anúncio oficial no Blog do Google Developers, e os profissionais interessados em começar a usar a API da bliblioteca do Google Photos devem conferir a documentação, incluindo um guia para migrar um aplicativo das APIs antigas do Google Picasa.

Fonte: TecMundo