E foi lançada a linguagem Go 1.21 com mudanças de numeração, melhorias, e mais. Confira as novidades e veja como instalar no Linux.
Go (ou golang) é uma linguagem de programação inicialmente desenvolvido pelo Google. Ela é uma linguagem estaticamente tipada com sintaxe vagamente derivada de C.
GO é uma linguagem de programação que está se tornando cada vez mais popular entre os desenvolvedores e os administradores de sistemas. Ela é inspirada em C++ e possui binários para Windows, Linux e Mac OS, além de ser open source, sendo coberta pela licença BSD.
Agora, Go 1.21 foi lançado como uma atualização bastante significativa para esta popular e moderna linguagem de programação.
Novidades da linguagem Go 1.21
Pouco depois de 6 meses do lançamento da versão anterior, chega a nova versão da popular linguagem de programação Go 1.21 e esta nova versão destaca os novos recursos adicionados à linguagem, bem como PGO, compatibilidade com versões anteriores e muito mais.
Com o lançamento desta nova versão do Go 1.21, é introduzida uma pequena alteração na numeração das versões, já que a numeração foi tratada à maneira do Go 1.x para se referir tanto à versão global da linguagem Go quanto à família de versões, bem como a primeira versão desta família.
A partir do Go 1.21, a primeira versão agora é Go 1.X.0. Você pode obter mais informações sobre como a nova numeração do Go será tratada no link a seguir.
Da parte das alterações que se destacam nesta nova versão podemos encontrar o suporte implementado para otimizações com base nos resultados do code profiling (PGO – Profile Guided Optimization), já que na versão anterior estava disponível apenas como pré-visualização e agora no Go 1.21 está disponível para uso geral.
Outra das mudanças que se destacam nesta no Go 1.21 é que uma porta experimental foi implementada para compilar o código de preparação do WebAssembly usando a API WASI (WebAssembly System Interface) para fornecer execução independente.
Além disso, também é importante notar que as funções min e max incorporadas foram adicionadas para selecionar o menor/maior valor, bem como a função clear para remover ou redefinir todos os elementos no mapa ou estruturas de corte.
Observe também que nesta no Go 1.21, o utilitário go é compatível com versões anteriores e posteriores da linguagem Go, permitindo que você use ferramentas antigas para criar novos códigos e vice-versa.
Quando Go deve fazer esse tipo de mudança de comportamento, ele agora escolhe entre o comportamento antigo e o novo com base no espaço de trabalho.
Por outro lado, também podemos constatar que foi adicionado suporte experimental à nova semântica para o processamento de variáveis em loops, o que nos permite evitar erros típicos devido a comportamentos específicos ao usar encerramentos e co-rotinas nas iterações.
A nova semântica envolve a criação para cada iteração do loop de uma instância separada da variável declarada no loop “for” usando o operador “:=”.
Melhorias também foram feitas na inferência de tipos em funções genéricas projetadas para trabalhar com vários tipos ao mesmo tempo, ou seja, uma função agora pode ser chamada com argumentos que são funções genéricas, além da inferência de tipos agora também consideram métodos ao atribuir um valor para uma interface e essa inferência de tipo agora é precisa ao combinar os tipos correspondentes nas atribuições
Das outras mudanças que se destacam, podemos encontrar os novos pacotes adicionados à biblioteca padrão:
- log/slog: funções para escrever logs estruturados.
- fatias: operações típicas com fatias de qualquer tipo.
- mapas: operações úteis em atribuições (mapa) com qualquer tipo de chaves e elementos.
cmp: funções para comparar valores ordenados. - O compilador foi reconstruído com a inclusão de otimizações PGO, o que permitiu acelerar a compilação de programas em 2-4%.
- O coletor de lixo foi otimizado para reduzir a latência em até 40% em alguns aplicativos.
- Redução da sobrecarga ao rastrear o código com o pacote runtime/trace nos sistemas amd64 e arm64.
Para saber mais sobre essa versão da linguagem Go, acesse a nota de lançamento.
Como instalar ou atualizar da linguagem Go
Para instalar a versão mais recente da linguagem Go nas principais distribuições Linux, use esse tutorial:
Como instalar a linguagem GO no Linux manualmente
Como instalar a poderosa linguagem Go no Linux via Snap
Como instalar facilmente o compilador e vários outros itens relacionados a linguagem Go