code review

26
Code Review Frank Santos facebook.com/aitproeg

Upload: ait-proeg-ufpa

Post on 27-Jun-2015

359 views

Category:

Technology


3 download

DESCRIPTION

Apresentação sobre Code Review

TRANSCRIPT

Page 1: Code review

Code  Review  

Frank  Santos  facebook.com/aitproeg  

Page 2: Code review

Quem  faz  revisões  de  código?  

Page 3: Code review

O  TIME  

Page 4: Code review

                                                           Tom  –  “Eu  preciso    disso  agora!!!”    

                                                                                                                                     Proprietário.  

                                                                     Harry  –  “Apenas  faça  isso!!!”                                          

                                                                                                                                   Gerente  

                                                           Adam  –  “O  codificador  da  noite  !!!”      

                                                                                                                         Desenvolvedor  

Page 5: Code review

                                                   Kris  –  “Hackety  Hack!!!”                                                                                              Mestre  revisor    de  código  

                                                   Bruno  –  “Ele  vai  trabalhar!!!”    

                                                                                             Revisor  aprendiz  

Page 6: Code review

       

     Quanto  tempo  precisamos  para     começar             e  ter  este  projeto  feito?  

      Bem,  design,  codificação,  código,             opiniões  testes,  ...  

             

    Será  que  realmente  precisamos  de  revisão  do  

      código?  Você  certamente  sabe  como       codificar,  como  testar  e  como  funciona  ...             Certo?  

Page 7: Code review

                                                           Estamos  quase  prontos,  só                            precisa  ser  revisto  este  código.  

                                Hmmm  ...  todos  os  desenvolvedores                      estão  ocupados,  não  temos                                                      um  sobresselente.  

                   Vamos  ignorar  essa  parte  e  seguir  em                   frente.  

Page 8: Code review

                                                       Olá  Harry,  

                 Eu  preciso  de  John  para  rever                 o  meu  código.  

       

             Johh  está  ocupado,  mas  tem  o    Rob.  

                                 Mas  Rob  é  um  desenvolvedor    júnior,           e  ele  não  sabe  este  sistema.  

Você  quer  ou  não  quer  o  seu  código  revisado?    

Rob  é  tudo  o  que  temos!  

Page 9: Code review

        Nós  fazemos  todas  essas               revisões  de  código.          

      Gastamos  muito  tempo  nisso!!  

       

      E  o  código  que  impulsiona  a  produção  ainda  está  dando  buggy.             É  uma  perda  de  tempo....  

Page 10: Code review

Revisão  de  Código  

Adam  -­‐    O  desenvolvedor  Para    Kris  O  Avaliador  

Kris,  

Eu  tenho  esse  código  que  eu  preciso  que  você  revise  ele  pra  mim!!!  Você  pode  fazer  isso  por  mim,  por  favor?      

O  código  está  no  meu  repositório.  obrigado  -­‐-­‐-­‐  Adam  

Page 11: Code review
Page 12: Code review

Sistemas  de  rastreamento  de  bugs  •  JIRA  •  Bugtrak  • ManBs  

Ferramentas  de  análise  dos    

códigos  

•  Crucible/Fisheye  •  Gerrit  •  Github  

Page 13: Code review

Revisão  de  Código  

Adam  -­‐    O  desenvolvedor  Para    Kris  O  Avaliador  

Kris,  Eu  tenho  esse  código  que  eu  preciso  que  você  revise  ele  pra  mim!!!  Você  pode  fazer  isso  por  mim,  por  favor?      

O  código  está  no  meu  repositório.  obrigado  -­‐-­‐-­‐  Adam  

Kris  -­‐  O  Avaliador  Para  Adam  O  Desenvolvedor  

Adam,  Nenhum  problema  ,  mas  onde  você  um  braço  do  código?  Eu  não  consigo  idenbficar  o  conjunto  de  mudanças  sem  ele.  -­‐-­‐-­‐  Kris  

Page 14: Code review

                                     O  que  analisar?  

•  Ter  um  controle  da  versão:  

–    Especificar   o   conjunto   de  mudanças   para   facilitar   o  entendimento   da   proposta  de   desenvolvimento   ou   das  mudanças.  

Page 15: Code review

Revisão  de  Código  

Adam  -­‐    O  desenvolvedor  Kris,  Eu  tenho  esse  código  que  eu  preciso  que  você  revise  ele  pra  mim!!!  (...)  

Kris  -­‐  O  Avaliador  Para  Adam  O  Desenvolvedor  

Adam,  Nenhum  problema  ,  mas  onde  você  um  braço  do  código?  Eu  não  consigo  idenbficar  o  conjunto  de  mudanças  sem  ele.  -­‐-­‐-­‐  Kris  

Adam  -­‐    O  desenvolvedor  Para    Kris  O  Avaliador  

Kris,  Ah  sim.  Desculpe.  Está  no  ramo  principal.  -­‐-­‐-­‐  Adam  

Page 16: Code review

O  propósito  da  Revisão  

O  que  ???  

Por  que?????  

Page 17: Code review

Uma  forma  de  fazer  as  coisas:  

                       Bruno  –  Ele  vai  trabalhar!!!                                                                                Revisor  aprendiz  

Comentário  habitual  produzido:  

•  Isso  faz  senbdo;  •  O  que  foi  feito  ou  alterado;  •  Sintabcamente  correto;  •  Aprovado  ou  não;  

Page 18: Code review

Uma  forma  de  fazer  as  coisas:  

         Kris  –  Hackety  Hack!!!                                                                                                    Mestre  revisor    de  código  

Ferramentas  Usadas:  – PHP  linter  – PHP  Code  Sniffer  – PHPUnit  – PHP  Documentor  – PHP  Depend  – PHP  Mess  Detector  

Page 19: Code review
Page 20: Code review
Page 21: Code review

Olhando  para  coisas  importantes  

         Kris  –  Hackety  Hack!!!                                                                                                    Mestre  revisor    de  código  

Coisas  verificadas:  –   clareza  –   desempenho  –   complexidade  excessiva  –   o  impacto  em  outros  sistemas  –   se  a  solução  resolve  o  problema  –   duplicações  –   qualidade  de  código  –   potenciais  problemas  de  implantação  –   falhas  de  projeto  

Page 22: Code review

Os  benejcios  de  uma  revisão  do  código  -­‐  eles  são  para  você!  

Comparblhamento  de  conhecimento  – Encontrar  bugs  /  falhas  de  projeto  cedo  –   Melhorar  a  qualidade  geral  do  código  –   Fomentar  a  parbcipação  colebva  do  código    

Page 23: Code review

Desenvolvedor  

Compreender  e  aceitar  que  você  vai  cometer  erros.  

•  Você  não  é  o  seu  código.  

•  Não  importa  o  quanto    você  sabe,  alguém  vai  sempre  saber  mais.  Uhauhauahuahuauha  

•  Não  reescrever  o  código  sem  consulta  

Page 24: Code review

Code  Reviewers  

•  A  única  autoridade  verdadeira  deriva  de  conhecimento,  não  de  posição  

•   Cribquem  códigos  ao  invés  de  pessoas  

Page 25: Code review

Como  realizar  uma  boa  revisão  de  código?  

•  Use  ferramentas,  não  seja  uma  ferramenta  

•  Verifique  se  há  duplicações  /  complexidade  

•  Veja  o  impacto  em  outros  sistemas  

•  Tornar  o  código  claro  e  auto-­‐describvo  

Page 26: Code review

Sebas=an    Marek,  SoAware  Architect