Refatorar é melhorar e reaproveitar código, não tenha medo


Não sei se um dia vou entender qual o medo das pessoas em aceitar mudanças, ainda mais em pessoas da área de informática. Elas são inevitáveis, é a evolução. Quando chega o momento em que deve-se alterar código que já está funcionando, é praticamente um "parto" convencer outros de que isso é bom.
Martin Fowler, em seu famoso livro Refactoring: Improving the design of Existing Code (em português "Refatoração: Aperfeiçoando o Projeto de Código Existente"), já dizia que refatorar é: "modificar um sistema de modo que seu comportamento não se altere, mas que sua arquitetura melhore, fique mais limpa". Um dos meus livros prediletos, praticamente livro de cabeceira. Inúmeras técnicas de como melhorar seu código.
É muito comum encontrarmos código duplicado, e mais comum ainda observar que o programador não reaproveitou o código porque precisava refatorá-lo, por puro medo de "quebrar" outra parte do sistema. Oras, pra isso existe TDD (Test Driven Development), se criássemos testes não haveria nenhum medo em quebrar outras partes do sistema, as quebras seriam imediatamente visíveis. E refatorar ficou ainda muito mais simples com as IDEs atuais, qualquer uma possui mecanismos poderosos para auxiliar esta tarefa.
Refatorar nosso código, mesmo código antigo, constitui menos manutenção no futuro, pois refatorar é também diminuir a complexidade e quantidade de código. As partes duplicadas no sistema, se contiverem quaisquer erro ou necessidade de mudança na regra de negócios, vai realmente tirar seu sono, pois obviamente nunca sabemos onde estão as cópias. Uma regra de negócio ou erro poderia ter sido resolvido com uma única "martelada" no lugar certo em um código "enxuto".
Então sem medo de refatorar, você não está perdendo tempo agora, está na verdade economizando tempo de manutenção.

Comentários

Postagens mais visitadas