Executando verificação de segurança...
1
Carregando publicação patrocinada...
2

Bom. Go por muito tempo rejeitou ideias como generics, programação funcional, entre outras coisas. Eles vem abandonando esse tipo de posição com o tempo. Porem ainda há coisas que me frustram.

Vou dar alguns exemplos em um projeto recente. Tenho tentado criar um template Para web, utilizando o que acho util das famosas "boas práticas" (clean code, ddd, solid...) e algumas coisas dificultam ou impossibilitam algumas abordagens.

Por exemplo: o fato das interfaces se auto implementarem nas estruturas dificulta um pouco durante a segregação de interfacies em frameworks de injeção de dependência como o Fx. Alem disso a falta de parâmetros genéricos especificamente em metodos (não estão disponíveis apenas nos métodos na versão atual) impossibilitada a criação de um pattern de pipeline. Que deixaria o código infinitamente mais limpo.

Essas e outras coisas fazem de Go uma linguagem frustrante as vezes. A implementação é perfeita, compilador simples, rápido, compila binários estáticos. Alguns toques a mais como melhor suporte a genéricos, um operador de auto retorno de erros como o "?" de Rust. Faria de Go a linguagem perfeita para a web.