Versão de produção Go 1.17: Codificação simplificada para melhorias de segurança e desempenho
A última versão de produção da linguagem de programação de código aberto Go 1.17 da Google introduz melhorias na linguagem e no compilador para aumentar a segurança e o desempenho. As novas funcionalidades incluem um método mais eficiente de passar argumentos de funções utilizando registos e uma codificação simplificada para operações de ponteiro seguras.

A Go 1.17, a mais recente actualização da linguagem de programação de código aberto da Google, foi lançada para proporcionar melhorias tanto em termos de segurança como de desempenho. Esta versão de produção apresenta melhorias na linguagem e no compilador que se concentram em simplificar a codificação para segurança, ao mesmo tempo que fornecem um método mais eficiente de passar argumentos de função.
As notas oficiais de lançamento destacam três pequenas modificações na linguagem, sendo que duas delas têm como objectivo facilitar a escrita de código que esteja em conformidade com as regras de segurança do unsafe.Pointer. As três melhorias incluem:
Além destas melhorias na linguagem, Go 1.17 também introduz uma nova técnica de compilação para passar argumentos e resultados de funções usando registos em vez da pilha. Esta alteração foi activada para Linux, MacOS e Windows na arquitectura x86 de 64 bits. De acordo com testes de benchmark, esta actualização resulta numa melhoria de desempenho de aproximadamente 5% e numa redução típica do tamanho binário de cerca de 2%. É importante notar que esta alteração não afecta a funcionalidade do código Go seguro. Além disso, o compilador agora permite que as funções que contêm fechamentos sejam alinhadas, o que pode levar a funções de ponteiro de código de fechamento distintas para cada lugar em que a função é alinhada.
Outra característica chave do Go 1.17 é a introdução de gráficos de módulos podados. Os gráficos de módulos que especificam Go 1.17 ou superior em seu arquivo go.mod incluirão apenas as dependências imediatas de outros módulos Go 1.17, em vez de suas dependências transitivas completas.
Os desenvolvedores podem baixar o Go 1.17 em golang.org. A versão anterior, Go 1.16, foi lançada em Fevereiro e trouxe melhorias na biblioteca e no tempo de execução. As versões estáveis actuais incluem Go 1.16.5 e Go 1.15.13. Uma futura versão da linguagem está programada para incluir uma capacidade de fuzzing para desenvolvedores Go. Go 1.17 entrou na fase de lançamento beta em 10 de junho.
Os programadores que pretendem criar aplicações Web, backend ou móveis podem beneficiar de plataformas como AppMaster.io, que oferecem um poderoso ambiente de desenvolvimentono-code que acelera o processo de desenvolvimento e assegura a escalabilidade para casos de utilização empresariais e de elevada carga.


