Maurício Andreazza Sganderla•   Desenvolvedor na uMov.me•   Aficionado por Agile•   No mercado de T.I. há 8 anos•   Formad...
TDDTest Driven Development
Criador
“Comece pelos testes...”
Todo palestrante fala isso!
Mas como assim pelos testes?
Critérios e User story são seus aliados
Mapa do Tesouro
Lembre-se
Entenda o critério
Faça falhar !
Resolva de forma simples !
Escute seu teste
Refatore
Reinicie o ciclo
• Acabou ! Acabou !• Foto do galvãoAcabou, acabou !
Evolua seu design
E sem medo
Pois você está protegido
Tenha seu cinto de ferramentas
Meu cinto de ferramentas
Atinja o objetivo
Clean Code
O cara
Por que Clean Code
Lendo Código
Bagunça
Insatisfação com a bagunça
Insatisfação com o teu código
Medo
Impotência
O que ou Como fazer?
Nada, que se foda não foi eu         quem fezhahahahahahahahhahahaha
Profissional
O que ou Como fazer?
Iniciar certo
Baby Step
Como fazer?
Com clean code? Mas o que é Clean code?
Fazer com cuidado
Revelar intenção
Fácil de entender
Satisfação
Simplicidade
Simplicidade
"Qualquer idiota é capaz de escrever código que um computador possa entender. Bons programadores   escrevem código que ser...
Benefícios
Refatoração
Manutenção
Custo
Mito
Diminuir BUGs
Exemplos
// valor salarioprivate BigDecimal vl;// total da comprapublic BigDecimal s1;// descricao do produtopublic void desc;
private BigDecimal valorSalario;public BigDecimal totalCompra;public void descricaoProduto;
private BigDecimal valorSalario;public BigDecimal totalCompra;public void descricaoProduto;
// calcular imposto de rendapublic void calcular();// total a pagar para funcionáriospublic BigDecimal total();// gerar re...
public void calcularImpostoDeRenda();public BigDecimal totalPagarFuncionarios();public void gerarRelatoriosBeneficios();
public void calcularImpostoDeRenda();public BigDecimal totalPagarFuncionarios();public void gerarRelatoriosBeneficios();
//calcular frete da entregapublic void calcular(){    // menor que 2100 km não possui frete    if(this.distancia < 2100 ){...
public void calcularFreteDaEntrega(){    // menor que 2100 km não possui frete    if(this.distancia < 2100 ){          thi...
public void calcularFreteDaEntrega(){    // menor que 2100 km não possui frete    if(this.distancia < 2100 ){          thi...
public void calcularFreteDaEntrega(){     if(naoTemFrete()){          this.taxa = this.valorCompra * 0;    } else{        ...
public void calcularFreteDaEntrega(){   this.taxa = 0;   if(temFrete())       this.taxa = this. valorCompra * PERCENTUAL_C...
Maurício Andreazza Sganderla                @m_andreazza                /mauricio.webdev               /mauricioweb     Jo...
TDD e Clean Code
TDD e Clean Code
TDD e Clean Code
TDD e Clean Code
TDD e Clean Code
TDD e Clean Code
Upcoming SlideShare
Loading in...5
×

TDD e Clean Code

423

Published on

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
423
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
2
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

TDD e Clean Code

  1. 1. Maurício Andreazza Sganderla• Desenvolvedor na uMov.me• Aficionado por Agile• No mercado de T.I. há 8 anos• Formado em Sistemas de InformaçãoJorge Oleques• Desenvolvedor na GetNet• Entusiasta XP• No mercado de T.I. há 6 anos• Formado Analise e Desenvolvimento• Pós-Graduando em Eng Software na FGV
  2. 2. TDDTest Driven Development
  3. 3. Criador
  4. 4. “Comece pelos testes...”
  5. 5. Todo palestrante fala isso!
  6. 6. Mas como assim pelos testes?
  7. 7. Critérios e User story são seus aliados
  8. 8. Mapa do Tesouro
  9. 9. Lembre-se
  10. 10. Entenda o critério
  11. 11. Faça falhar !
  12. 12. Resolva de forma simples !
  13. 13. Escute seu teste
  14. 14. Refatore
  15. 15. Reinicie o ciclo
  16. 16. • Acabou ! Acabou !• Foto do galvãoAcabou, acabou !
  17. 17. Evolua seu design
  18. 18. E sem medo
  19. 19. Pois você está protegido
  20. 20. Tenha seu cinto de ferramentas
  21. 21. Meu cinto de ferramentas
  22. 22. Atinja o objetivo
  23. 23. Clean Code
  24. 24. O cara
  25. 25. Por que Clean Code
  26. 26. Lendo Código
  27. 27. Bagunça
  28. 28. Insatisfação com a bagunça
  29. 29. Insatisfação com o teu código
  30. 30. Medo
  31. 31. Impotência
  32. 32. O que ou Como fazer?
  33. 33. Nada, que se foda não foi eu quem fezhahahahahahahahhahahaha
  34. 34. Profissional
  35. 35. O que ou Como fazer?
  36. 36. Iniciar certo
  37. 37. Baby Step
  38. 38. Como fazer?
  39. 39. Com clean code? Mas o que é Clean code?
  40. 40. Fazer com cuidado
  41. 41. Revelar intenção
  42. 42. Fácil de entender
  43. 43. Satisfação
  44. 44. Simplicidade
  45. 45. Simplicidade
  46. 46. "Qualquer idiota é capaz de escrever código que um computador possa entender. Bons programadores escrevem código que seres humanos podem entender”(Martin Fowler)
  47. 47. Benefícios
  48. 48. Refatoração
  49. 49. Manutenção
  50. 50. Custo
  51. 51. Mito
  52. 52. Diminuir BUGs
  53. 53. Exemplos
  54. 54. // valor salarioprivate BigDecimal vl;// total da comprapublic BigDecimal s1;// descricao do produtopublic void desc;
  55. 55. private BigDecimal valorSalario;public BigDecimal totalCompra;public void descricaoProduto;
  56. 56. private BigDecimal valorSalario;public BigDecimal totalCompra;public void descricaoProduto;
  57. 57. // calcular imposto de rendapublic void calcular();// total a pagar para funcionáriospublic BigDecimal total();// gerar relatório dos beneficiospublic void gerar();
  58. 58. public void calcularImpostoDeRenda();public BigDecimal totalPagarFuncionarios();public void gerarRelatoriosBeneficios();
  59. 59. public void calcularImpostoDeRenda();public BigDecimal totalPagarFuncionarios();public void gerarRelatoriosBeneficios();
  60. 60. //calcular frete da entregapublic void calcular(){ // menor que 2100 km não possui frete if(this.distancia < 2100 ){ this.taxa = this.valorCompra * 0; } else{ this.taxa = this. valorCompra * 0.03; }}
  61. 61. public void calcularFreteDaEntrega(){ // menor que 2100 km não possui frete if(this.distancia < 2100 ){ this.taxa = this.valorCompra * 0; } else{ this.taxa = this. valorCompra * 0.03; }}
  62. 62. public void calcularFreteDaEntrega(){ // menor que 2100 km não possui frete if(this.distancia < 2100 ){ this.taxa = this.valorCompra * 0; } else{ this.taxa = this. valorCompra * 0.03; }}private boolean naoTemFrete(){ return this.distancia < 2100;}
  63. 63. public void calcularFreteDaEntrega(){ if(naoTemFrete()){ this.taxa = this.valorCompra * 0; } else{ this.taxa = this. valorCompra * 0.03; }}private boolean naoTemFrete(){ return this.distancia < 2100;}
  64. 64. public void calcularFreteDaEntrega(){ this.taxa = 0; if(temFrete()) this.taxa = this. valorCompra * PERCENTUAL_CALCULO;}private boolean temFrete(){ return this.distancia > DISTANCIA_MINIMA;}
  65. 65. Maurício Andreazza Sganderla @m_andreazza /mauricio.webdev /mauricioweb Jorge Oleques @jorgeoleques /joleques /joleques
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×