A Uber é uma empresa de tecnologia sediada no Vale do Silício, EUA, e uma das primeiras usuárias da linguagem Go. Ela tornou open source muitos projetos golang, como o conhecido zap e jaeger na comunidade Gopher. No final de 2018, a Uber tornou open source seu guia de estilo interno para Go no GitHub. Após um ano de acumulação e atualizações, o guia tomou forma e recebeu atenção extensiva dos Gophers. Este artigo é a versão em chinês do guia.

O estilo de código rege as convenções que controlam nosso código. Essas convenções abrangem não apenas o formato do arquivo fonte tratado pelo gofmt para nós.

O objetivo deste guia é gerenciar essa complexidade descrevendo detalhadamente as considerações para escrever código Go na Uber. A existência dessas regras é para tornar a base de código fácil de gerenciar, permitindo que os engenheiros usem os recursos da linguagem Go de forma mais eficaz.

O guia foi inicialmente escrito por Prashant Varanasi e Simon Newton com o objetivo de permitir que colegas usem rapidamente Go. Ao longo dos anos, o guia foi modificado com base no feedback de outras pessoas.

Este documento registra as convenções idiomáticas no código Go que seguimos na Uber. Muitas delas são diretrizes gerais para Go, enquanto outras diretrizes estendidas dependem dos seguintes guias externos:

  1. Effective Go
  2. Go Common Mistakes
  3. Go Code Review Comments

Nosso objetivo é tornar os exemplos de código adequados para uso com duas versões releases do Go.

Todo o código deve passar pelas verificações do golint e go vet sem erros. Recomendamos configurar seu editor para:

  • Executar goimports ao salvar
  • Executar golint e go vet para verificação de erros

Repositório GitHub: https://github.com/uber-go/guide

Repositório GitHub: https://github.com/xxjwxc/uber_go_guide_cn