Este documento discute refatoração de código Python. Ele explica que refatoração significa alterar o código sem alterar sua funcionalidade externa, como remover duplicação, melhorar coesão e design. Também destaca que refatoração é importante para manter o software funcionando bem ao longo do tempo e torná-lo mais legível. Além disso, apresenta algumas técnicas comuns de refatoração como extract method, extract class e decompose conditional.
7. Extract Method
●
Por quê?
– Métodos longos e difíceis de ler
●
Como?
– Crie um método novo
– Mova o bloco de código para ele
8. Extract Class
●
Por quê?
– Classes longas e difíceis de ler
●
Como?
– Crie uma classe nova
– Referencie-a no objeto atual
– Mova os métodos para ela, um a um
9. Decompose Conditional
●
Por quê?
– Condicionais difíceis de entender
●
Como?
– Extraia um método a partir da condição; ou
– Introduza uma variável a partir da condição
10. Introduce Parameter Object
●
Por quê?
– Dificuldades de lidar com o cabeçalho dos
métodos
●
Como?
– Crie um objeto com os parâmetros como atributos
– Adicione um parâmetro para o objeto
– Passe os parâmetros para ele e leia dele
– Remova os parâmetros antigos
11. 3. Referências
●
“Refactoring – Improving the Design of
Existing Code” - Martin Fowler
– Compre em inglês!!!1
●
“Refactoring for Patterns” - Joshua Kerievsky
●
“Clean Code” - Robert “Uncle Bob” Martin
12. Logo mais:
●
Design de código: princípios e práticas para
ter um código sustentável (Andrews Medina –
auditório – 11:20)