Ricardo Murad
O que é código legado?
“Código legado é
simplesmente código
sem teste”
“Código sem teste é
código ruim”
Ainda que o código esteja bem
escrito, o risco de altera-lo
sem testes é muito alto.
If it's not broke, don't fix it
O que alterar?
Como alterar sem interferir no
comportamento existente?
Sem testes unitários
Edit and Pray

Edite e reze para nada
dar errado...
Cubra e modifique...

Proteja suas
alterações com
testes
Ferramentas e Técnicas
Frameworks de testes
Ferramentas de refatoração
Mock Objects
Fake Objects
Como escrever testes
para um código cheio de dependências?

“Grande parte do
trabalho com código legado
envolve a eliminaç...
Parameterize Constructor
Extract Interface
Extract Interface

*no eclipse: ALT+SHIFT+T

Extract Interface
Algoritmo de trabalho com código legado
Identifique pontos de alteração
Encontre os pontos de testes
Elimine dependências
...
+

=
Obrigado!
Próximos SlideShares
Carregando em…5
×

Trabalho efetivo com_codigo_legado

123 visualizações

Publicada em

0 comentários
0 gostaram
Estatísticas
Notas
  • Seja o primeiro a comentar

  • Seja a primeira pessoa a gostar disto

Sem downloads
Visualizações
Visualizações totais
123
No SlideShare
0
A partir de incorporações
0
Número de incorporações
1
Ações
Compartilhamentos
0
Downloads
1
Comentários
0
Gostaram
0
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide

Trabalho efetivo com_codigo_legado

  1. 1. Ricardo Murad
  2. 2. O que é código legado?
  3. 3. “Código legado é simplesmente código sem teste” “Código sem teste é código ruim”
  4. 4. Ainda que o código esteja bem escrito, o risco de altera-lo sem testes é muito alto.
  5. 5. If it's not broke, don't fix it
  6. 6. O que alterar? Como alterar sem interferir no comportamento existente?
  7. 7. Sem testes unitários Edit and Pray Edite e reze para nada dar errado...
  8. 8. Cubra e modifique... Proteja suas alterações com testes
  9. 9. Ferramentas e Técnicas Frameworks de testes Ferramentas de refatoração Mock Objects Fake Objects
  10. 10. Como escrever testes para um código cheio de dependências? “Grande parte do trabalho com código legado envolve a eliminação de dependências”
  11. 11. Parameterize Constructor
  12. 12. Extract Interface
  13. 13. Extract Interface *no eclipse: ALT+SHIFT+T Extract Interface
  14. 14. Algoritmo de trabalho com código legado Identifique pontos de alteração Encontre os pontos de testes Elimine dependências Escreva testes Faça alterações e refatore
  15. 15. + =
  16. 16. Obrigado!

×