20 dicas para code reviews eficientes

Code reviews (ou revisões de código) bem conduzidas são capazes de aumentar o nível de qualquer projeto. Conheça 20+ dicas para code reviews eficientes.

Ir para o artigo

Uma code review (ou revisão de código) bem conduzida é uma oportunidade para ambos, o autor e o revisor, aprenderem, compartilharem conhecimento e contribuírem para a qualidade geral do software.

Essas revisões de código são nossa jornada compartilhada em direção à excelência. As diretrizes a seguir podem ajudar autores e revisores a realizar essa tarefa de maneira mais eficiente e construtiva.

Como autor de uma code review, valorize o tempo do seu revisor

Um dos aspectos mais críticos de uma code review eficaz é o respeito pelo tempo do seu revisor.

Veja a seguir algumas dicas para os autores.

Revise seu código primeiro

Antes de enviar seu código para revisão, faça uma revisão você mesmo. Procure erros de digitação, erros lógicos e possíveis melhorias.

Essa revisão preliminar ajuda a identificar e corrigir pequenos problemas antes de envolver algum revisor.

Divida listas grandes de alterações

Em uma code review, é mais fácil e eficiente revisar pedaços de código menores e gerenciáveis do que blocos grandes.

Ao dividir suas alterações em unidades lógicas menores, você torna o processo de revisão mais eficaz e menos avassalador.

Commits menores e mais focados certamente ajudam neste sentido.

Automatize as coisas mais fáceis

Automatize tarefas como linting e formatação de código usando ferramentas adequadas para isso.

Dessa forma, você economiza o tempo do revisor e garante que seu código esteja em conformidade com os padrões da sua equipe sem intervenção manual.

Isso geralmente é alinhado no nível da equipe ou do projeto com antecedência.

Alterações limitadas de escopo

Suas alterações de código devem ser o mais específicas e com escopo mais rígido possível.

A inclusão de alterações não-relacionadas pode confundir o revisor e aumentar a chance de erros.

Responda bem a críticas

Aceite críticas construtivas de maneira positiva e use-as como uma oportunidade de aprendizado.

Todo mundo comete erros, e uma revisão de código é uma chance de aprender com eles.

Minimize o lag entre as rodadas de revisão

Respostas rápidas para revisar comentários ajudam a manter o processo em movimento e a reduzir o tempo gasto em cada revisão.

Peça esclarecimentos sobre informações ausentes

Se você não tiver certeza de algo, peça esclarecimentos.

O diálogo construtivo ajuda ambos, autor e revisor, a aprender.

Comunique respostas explicitamente

Sempre comunique suas alterações explicitamente.

Mesmo se você fez alterações de acordo com as sugestões do revisor, é bom explicá-lo.

Lembre-se da documentação

Uma boa documentação pode ser tão importante quanto o próprio código. Ele fornece contexto e explica por que e como o código funciona, facilitando assim a compreensão do código por outras pessoas.

O mesmo pode ser dito de outras expectativas do projeto, como testes.

Como revisor de uma code review, verifique se o código é…

Mulher com códigos projetados em sua face, dando a entender que está fazendo code review.

Agora, algumas dicas bem úteis para revisores em code reviews.

Necessário e bem projetado

Verifique se o código é necessário e se encaixa bem na base de código existente.

Cada peça deve interagir com outras pessoas de maneira harmoniosa, contribuindo positivamente para a funcionalidade geral do sistema.

Legível e claro em sua intenção

O código deve ser facilmente compreensível e seu objetivo explícito.

Essa clareza é benéfica não apenas para usuários finais, mas também para futuros mantenedores.

Comentado com “Por que”, não com “O que”

Os comentários (quando julgados convenientes) devem explicar porque o código existe e não o que está fazendo.

Esse princípio ajuda a entender a lógica por trás do código.

Não é mais complexo do que o necessário

Código complexo é mais difícil de manter e mais propenso a bugs.

O código deve ser o mais simples possível sem comprometer sua funcionalidade.

Sim, são conceitos relativos, mas, com o tempo, chega-se ao entendimento do time sobre o que, na prática, cada um significa.

Segue o Guia de Estilo

O código deve aderir ao Guia de Estilo do projeto ou equipe.

As principais alterações de estilo devem ser mantidas separadas da lista de alterações primária.

Bem testado e documentado

Sempre que possível, o código deve vir com testes e documentação adequados.

Essa prática ajuda a manter a integridade do código e permite que outras pessoas o entendam melhor.

Mantenha as revisões de código construtivas

Os comentários das code reviews devem ser focados no código, não no desenvolvedor. As avaliações de habilidades de programação não devem fazer parte das revisões de código.

Evite comentários condescendentes ou vagos. Em vez disso, seja claro, específico e inclua feedback positivo, quando apropriado.

Tente evitar ser excessivamente meticuloso/exigente; deixe as verificações automatizadas de estilo lidarem com pequenos problemas.

Decida o que importa através de bons critérios

Existem vários critérios a serem considerados durante uma revisão de código:

  • O código atende aos requisitos?
  • É logicamente correto e seguro?
  • Tem performance e robustez?
  • Existe alguma complexidade desnecessária?
  • Possui breaking changes?

Essa são algumas das perguntas que você deve fazer ao revisar o código.

Com o tempo, você, juntamente com a equipe, descobrirão quais outras perguntas são relevantes para o bom andamento daquele projeto, em específico.

Conclusão

As revisões de código devem ser respeitosas, construtivas e focadas. Tanto o autor, quanto o revisor de cada code review, desempenham papéis cruciais na manutenção da qualidade do código e na garantia de sua manutenção a longo prazo.

Lembre-se de manter a mente aberta e sempre se esforce para melhorar.

Feliz revisão!

Usamos cookies para melhorar sua experiência e para ajudar a entender como nosso site é usado. Ao utilizar este site, você aceita o uso de cookies. Consulte nossa política de privacidade para obter mais informações.