https://medium.com/inside-picpay/organizing-projects-and-defining-names-in-go-7f0eab45375d
O artigo discute a organização de projetos e a definição de nomes na linguagem Go, destacando a importância de convenções e práticas recomendadas para facilitar o desenvolvimento em equipe. Aqui estão os principais pontos abordados:
Crescimento da Comunidade Go
- A comunidade Go na PicPay está crescendo, tornando-se uma das principais tecnologias utilizadas na empresa.
- Com o aumento de desenvolvedores, a complexidade na organização de projetos também aumenta, levando à necessidade de padrões e convenções.
Estrutura de Pacotes
- Pacotes: Um projeto em Go é definido por um ou mais pacotes, que servem como namespaces para o código.
- Os pacotes podem ser classificados em bibliotecas e aplicações.
Organização de Bibliotecas
- Cada pacote deve ter um único propósito, seguindo o princípio da Responsabilidade Única (Single Responsibility).
- Pacotes que têm múltiplas implementações devem ter um pacote “pai” que agrupe as sub-bibliotecas.
Organização de Aplicações
- A estrutura de pacotes para aplicações deve considerar a testabilidade, legibilidade e manutenibilidade do código.
- Os tipos de domínio modelam as funcionalidades do negócio, enquanto os serviços implementam as operações definidas.
Nomeação de Pacotes e Variáveis
- Nomeação de Pacotes: Devem ser curtos e descritivos, evitando nomes genéricos como “util” ou “helper”.
- Nomeação de Variáveis: Usar convenções como camelCase e manter nomes curtos e descritivos, especialmente quando a variável é usada longe de sua declaração.
Conclusões
- A adoção de boas práticas de desenvolvimento está diretamente relacionada à organização do projeto.
- Princípios como SOLID, KISS e arquitetura limpa são fundamentais para garantir que o código seja legível, fácil de manter e testável.
O artigo enfatiza a importância de seguir essas diretrizes para melhorar a colaboração e a eficiência no desenvolvimento de software em Go.
Dica do Caio Colaiacovo