Lançado Go 1.23: visão geral das principais mudanças do novo release

Treinador Online de Python para Iniciantes

Aprenda Python facilmente sem sobrecarga teórica. Resolva tarefas práticas com verificação automática e escreva código diretamente no navegador.

Start Course

Go 1.23: Novo ciclo de evolução da linguagem do Google



A equipe de desenvolvedores do Go (Golang) apresentou o release estável da versão 1.23. Esta atualização não apenas corrige bugs — ela traz mudanças significativas na biblioteca padrão e no sistema de tipos, tornando a linguagem ainda mais conveniente e performática. Se você acompanha o ecossistema Go, esta versão definitivamente merece atenção.



A principal "novidade" do release é a tão esperada compatibilidade com iteradores a nível de linguagem (range-over-func). Agora o loop for range pode funcionar não apenas com slices, maps e strings, mas também com funções-iteradoras arbitrárias. Isso abre caminho para pipelines de processamento de dados mais elegantes, sem a necessidade de escrever funções callback complexas.



  • Iteradores (range-over-func). A biblioteca padrão já inclui dezenas de novos iteradores para os pacotes slices, maps e bytes. Agora é possível escrever for item := range myCollection.All() { ... } para coleções personalizadas.
  • Pacote math/rand atualizado. No Go 1.23, ele recebeu uma nova implementação do gerador de números aleatórios baseada em ChaCha8. Isso é mais rápido e seguro que o algoritmo anterior (Mersenne Twister), especialmente em uso paralelo.
  • Pacote unique. O novo pacote experimental unique (anteriormente conhecido como unique/unique) fornece um mecanismo para interning (deduplicação) de valores arbitrários. Ele permite economizar memória ao trabalhar com strings ou estruturas repetidas.
  • Melhorias em testes. A função t.Context() no pacote testing agora retorna um contexto que é automaticamente cancelado ao final do teste. Isso simplifica a escrita de testes com timeouts e cancelamento.
  • Aumento de desempenho. O garbage collector (GC) foi otimizado, o escalonador de goroutines foi melhorado e o consumo de memória ao trabalhar com grandes maps foi reduzido.


Vale destacar também as mudanças nas ferramentas. O compilador go build agora usa PGO (Profile-Guided Optimization) por padrão, se um arquivo de perfil default.pgo for encontrado no diretório do projeto. Isso proporciona um ganho de desempenho de até 5-10% sem qualquer alteração no código.



A atualização também afeta a segurança: várias vulnerabilidades no processamento de certificados TLS e no trabalho com arquivos foram corrigidas. Recomenda-se que os desenvolvedores atualizem o mais rápido possível, especialmente se os projetos usarem os pacotes crypto/tls ou archive/zip.



Para quem está começando a aprender Go, a versão 1.23 é um ótimo motivo para se juntar à comunidade. A linguagem está se tornando cada vez mais amigável, e os novos iteradores e o math/rand melhorado simplificam a resolução de tarefas típicas.



Como atualizar? Basta baixar a nova versão do site oficial go.dev ou usar o gerenciador de versões gvm. Após a instalação, verifique a versão com o comando go version — você deve ver go1.23.0.



Acompanhe as atualizações no PythonLib — continuamos a falar sobre os eventos mais importantes no mundo da programação. Go 1.23 é um passo à frente que será apreciado tanto por iniciantes quanto por desenvolvedores experientes.

Recommended Libraries