Saltar al contenido principal

Code review

Code Review

O objetivo do code review é garantir qualidade, manutenibilidade, performance e alinhamento com as práticas do WMS. Todos os pull requests devem ser revisados antes de serem mesclados.

Regras obrigatórias

  1. Divisão de responsabilidades
    • Métodos e classes devem ter uma única responsabilidade.
    • Seguir princípios de SOLID, evitando acoplamento excessivo.
    • Evitar classes que concentram muitas funções.
  2. Tamanho de métodos e classes
    • Métodos muito longos devem ser quebrados em funções menores e coesas.
    • Classes extensas devem ser refatoradas em componentes menores ou serviços.
  3. Tratamento de exceções
    • Toda operação sujeita a falhas deve ter tratamento adequado.
    • Evitar catch genérico sem logging ou ação concreta.
    • Exceções devem ser específicas, permitindo rastreabilidade e manutenção.
  4. Testes unitários
    • Cobertura mínima de X% (definir padrão do time).
    • Novas funcionalidades ou refactorings devem ser acompanhados de testes.
    • Testes devem ser legíveis, confiáveis e independentes.
  5. Performance
    • Evitar algoritmos desnecessariamente custosos.
    • Considerar complexidade de tempo e espaço.
    • Evitar consultas ou loops ineficientes, principalmente em processamento de grandes volumes de dados.
  6. Padrões do DDD (Domain-Driven Design)
    • Respeitar entidades, agregados, value objects, serviços de domínio e repos.
    • Garantir que a lógica de negócio esteja centralizada nos modelos do domínio, não na camada de aplicação ou infraestrutura.

Checklist sugerido para code review

  • Nome de classes e métodos claros e coerentes.
  • Código coeso e com responsabilidade única.
  • Tratamento de erros consistente e rastreável.
  • Testes unitários presentes e relevantes.
  • Performance considerada (loops, queries, memória).
  • Segue padrões de DDD e arquitetura do projeto.
  • Código legível e comentado apenas quando necessário.