O documento apresenta uma palestra sobre Test Driven Development (TDD). O resumo é:
1) TDD ajuda a equalizar qualidade, velocidade e custo do desenvolvimento de software;
2) TDD promove entregas cíclicas de pequenas funcionalidades com feedback imediato;
3) Testes automatizados documentam o código e permitem refatorações seguras.
11. Antes de Comecar...
‣ TDD não é ensinado, TDD é praticado!
‣ Na fase de treinamento é importante seguir as
regras.
‣ Baby Steps.
Friday, December 9, 2011
13. Modelagem / Teste
‣ Seja cliente do código que irá escrever
‣ O que eu vou entregar e o que eu quero de volta?
‣ Escreva um teste com o design concebido
Friday, December 9, 2011
15. Escreva o código
‣ Gaste um tempo pensando no seu problema, planeje
até ter uma solução limpa e elegante.
‣ Mantenha o foco. O target é fazer o teste passar.
‣ Faça o teste passar.
Friday, December 9, 2011
17. Refatorar
‣ Use nomes que façam sentido.
‣ Aplique otimizações.
‣ Pair Programming
‣ Honre seu nome, o git blame pode te entregar.
‣ “Qualquer um escreve código que computadores
entendem. Bons programadores escrevem código
que humanos podem entender.” - Martin Fowler
Friday, December 9, 2011
18. Quando refatorar?
‣ Código duplicado
‣ Métodos longos
‣ Classes grandes (o famoso sacolão)
‣ Muitos parâmetros
Friday, December 9, 2011
19. Quando refatorar?
.. do Zen of Python (Tim Peters)
‣ Beautiful is better than ugly.
‣ Simple is better than complex.
‣ Sparse is better than dense.
‣ Readability counts.
Friday, December 9, 2011
22. Placar de Boliche
‣ 10 “frames”, 2 arremessos cada
‣ 10 pinos
‣ Strike: Se o primeiro arremesso derrubar os 10 pinos
‣ Os dois próximos arremessos serão “dobrados”
‣ Spare: Derrubar todos os pinos com os 2
arremessos
‣ O próximo arremesso será “dobrado”
Friday, December 9, 2011
24. O Problema
Bom
Barato Rápido
Friday, December 9, 2011
25. TDD ajuda a equalizar
Friday, December 9, 2011
26. TDD ajuda a equalizar
‣ Testar é mais barato que debugar.
‣ (Tempo = Dinheiro)
‣ Código é documentado pelos testes.
‣ Menos bugs em produção.
‣ Software mais consistente. Mude o que quiser com
segurança. Trabalhe tranquilo.
‣ Entregas cíclicas.
Friday, December 9, 2011