SlideShare uma empresa Scribd logo
@tonicospinelli
Code Review
Compartilhando
Qualidade e Conhecimento
Code Review
O que é?
Por que usar?
Como?
O que examinar?
O que é? Code Review
seu código será revisado por alguém antes de ir para produção!
Revisores examinarão seu código para:
● encontrar erros e falhas lógicas
● sugerir melhorias
● verificar se desenvolveu dentro do padrão
● nivelar o conhecimento dentro do time
Tudo isso, antes de colocar para testar!
Revisão do meu código? É SÉRIO ISSO!?
Por que deveria usar dentro do
processo de desenvolvimento?
Code Review
Por que?
Melhora a qualidade do software
Code Review
ScrutinizerCodacyPDepend
Por que?
Compartilha conhecimento entre a equipe
Code Review
Por que?
Melhora capacidade de manutenção do código
Code Review
Por que?
Mentoria desenvolvedores mais jovens
Code Review
Por que?
Adesão aos padrões e convenções de codificação
Code Review
Por que?
Aumenta a colaboração
Code Review
Por que?
reduz o retrabalho
Code Review
Por que?
Aumentar a satisfação / retenção de clientes
Code Review
Por que?
Definir estimativas
Code Review
Por que?
Reforçar a vantagem competitiva
Code Review
mas como consigo chegar
nesta qualidade?
Code Review
Como?
Examine de 200 a 400 linhas de código a cada vez
Code Review
Como?
Sem pressa! As inspeções devem ser inferiores a 500 LOC/hora
Code Review
Como?
Revise em até 1h por vez
Code Review
Como?
Defina metas e capture métricas
Code Review
Como?
Os autores devem comentar o código antes da revisão
Code Review
Como?
Utilize Checklist
Code Review
Como?
Estabeleça um processo para corrigir defeitos encontrados
Code Review
Como?
Promover uma cultura positiva de revisão de código
Code Review
Como?
Sofrer por antecedência as implicações da revisão
Code Review
Como?
Pratique revisões de código de maneira assertiva
Code Review
o que devo avaliar
durante o Code Review?
Code Review
O que Avaliar?
o código respeita os princípios S.O.L.I.D.?
Code Review
O que Avaliar?
existe duplicação de código?
Code Review
O que Avaliar?
está no mesmo padrão estrutural?
Code Review
O que Avaliar?
código foi deixado melhor do que o encontrado?
Code Review
O que Avaliar?
procure por bugs em potencial
Code Review
O que Avaliar?
tratamento de erros estão adequados?
Code Review
O que Avaliar?
o código é eficiente?
Code Review
O que Avaliar?
nomenclatura das classes, métodos e variáveis são coerentes?
Code Review
public function calculate($first, $second)
{
return $first + $second;
}
public function sum($first, $second);
$i
$index
$e
$exception
$usr
$user
Utils
Common
Tools
Helper
O que Avaliar?
a função tem menos de 20 linhas?
Code Review
O que Avaliar?
a classe tem menos de 300 linhas?
Code Review
O que Avaliar?
tem código comentado?
Code Review
O que Avaliar?
foi adicionado docblock?
Code Review
O que Avaliar?
número de argumentos é superior a 3?
Code Review
O que Avaliar?
o código está legível?
Code Review
O que Avaliar?
tem teste fazendo cobertura do código?
Code Review
● eles cobrem cenários de falha?
● são fáceis de ler?
● são grandes?
● são lentos?
PHPUnit 5.4.6
........................ 59 / 59 (100%)
Time: 349 ms, Memory: 6.00MB
OK (59 tests, 126 assertions)
O que Avaliar?
teste no nível correto
Code Review
Unit Test (95%)
Integration Test (5%)
O que Avaliar?
teste unitário com mais do que 3 Mocks?
Code Review
O que Avaliar?
a implementação atende aos requisitos?
Code Review
Dúvidas?
@tonicospinelli
joind.in/talk/c7441
#phpexperience2017

Mais conteúdo relacionado

PPT
PPTX
Panel de control de windows
PPT
Anatomy of a network
PDF
Como instalar controladores de forma manual en windows 7
PPTX
Daemons
PPTX
Linux operating system - Overview
PPT
Introduction To Operating System
Panel de control de windows
Anatomy of a network
Como instalar controladores de forma manual en windows 7
Daemons
Linux operating system - Overview
Introduction To Operating System

Mais procurados (8)

PPTX
Evolucion de big data @ mercadolibre.com
DOCX
Caracteristicas de los primeros chipset
PDF
PPTX
Operating Systems
DOCX
Linux crontab
PDF
하이퍼레저 패브릭 데이터 구조
PPTX
Isdn y rdsi comparacion ventajas y desventajas
PDF
Operating systems Basics
Evolucion de big data @ mercadolibre.com
Caracteristicas de los primeros chipset
Operating Systems
Linux crontab
하이퍼레저 패브릭 데이터 구조
Isdn y rdsi comparacion ventajas y desventajas
Operating systems Basics
Anúncio

Semelhante a Compartilhando qualidade e conhecimento com code review (12)

PDF
Code review
PDF
TDC SP 2019 - Decodificando o code review
PPTX
SILO - Code Review
PDF
Revisão de Código - Uma prática que depende da cultura
PDF
TDC2018SP | Trilha XP - Faca a diferenca com Code Review
PDF
Code Review
PDF
Guru SP: Decodificando o code review
PPTX
O que devo procurar em um code review
PDF
TDC2017 | Florianopolis - Trilha DevOps How we figured out we had a SRE team ...
PDF
Sobre code smells, refactoring e design: como SOLID pode te ajudar no dia a dia
PDF
Efeitos da Prática de Revisão de Código na Caelum: Um Estudo Preliminar em Du...
PDF
Code review: o que isso diz sobre a cultura dos times de desenvolvimento?
Code review
TDC SP 2019 - Decodificando o code review
SILO - Code Review
Revisão de Código - Uma prática que depende da cultura
TDC2018SP | Trilha XP - Faca a diferenca com Code Review
Code Review
Guru SP: Decodificando o code review
O que devo procurar em um code review
TDC2017 | Florianopolis - Trilha DevOps How we figured out we had a SRE team ...
Sobre code smells, refactoring e design: como SOLID pode te ajudar no dia a dia
Efeitos da Prática de Revisão de Código na Caelum: Um Estudo Preliminar em Du...
Code review: o que isso diz sobre a cultura dos times de desenvolvimento?
Anúncio

Mais de Antonio Spinelli (6)

PDF
Farming logs to save the weekend
PDF
STRUCTured Type Codes
PDF
Substituir Type Codes "com" Classe
PDF
O profissional que você respeita
PDF
modernizando a arquitertura de sua aplicação
PDF
Developing for Business
Farming logs to save the weekend
STRUCTured Type Codes
Substituir Type Codes "com" Classe
O profissional que você respeita
modernizando a arquitertura de sua aplicação
Developing for Business

Último (7)

PDF
apresentacao introducao computacao ead.pdf
PDF
Dos requisitos ao código: como criar código rastreável em PHP
PDF
Evolução em código: algoritmos genéticos com PHP
DOC
CODIGO PARA AUTOMATIZAR A JOGABILIDADE SUPER MARIO
DOC
COMO AUTOMATIZR JOGOS SUPER NINTENDO ATRAVES DA PROGRAMAÇÃO
PPTX
Curso de Windows 11 resumido na prática.pptx
PPTX
Mapeamento de Objeto para Tabela Relacional
apresentacao introducao computacao ead.pdf
Dos requisitos ao código: como criar código rastreável em PHP
Evolução em código: algoritmos genéticos com PHP
CODIGO PARA AUTOMATIZAR A JOGABILIDADE SUPER MARIO
COMO AUTOMATIZR JOGOS SUPER NINTENDO ATRAVES DA PROGRAMAÇÃO
Curso de Windows 11 resumido na prática.pptx
Mapeamento de Objeto para Tabela Relacional

Compartilhando qualidade e conhecimento com code review