Refatoração – Aperfeiçoamento e Projeto

cover_82c22744-4cfe-4fcb-a918-535ed9d92441O que ha de errado em um código simples feito de forma rápida e imperfeita? Aparentemente nada, desde que ele funcione! Seria um julgamento meramente estético? O usuário final e o compilador não se importam se o código é ou não elegante.

Mas quando alteramos uma solução, há um humano envolvido e humanos se importam. Uma solução mal projetada é difícil de ser alterada.

Se for difícil descobrir aonde e como alterar, há uma grande chance desse humano cometer um erro e introduzir falhas, principalmente se caso o pedaço de código esteja inserido dentro de uma solução complexa.

Refatoração é o processo de alteração de uma solução de modo que o comportamento externo do código não mude, mas que sua estrutura interna seja melhorada. É uma maneira disciplinada e sistemática de aperfeiçoar o código que minimiza a chance de introdução de falhas.

Sem refatoração, o projeto termina por se deteriorar. À medida que as pessoas alteram o código, alterações para executar objetivos de curto prazo, alterações sem uma compreensão total do projeto da solução e principalmente alterações por pessoas sem experiência reais de design OO levam o projeto para o caminho da inflexibilidade e rigidez. Isso tem um efeito cumulativo. Quanto mais difícil é entender a solução a partir do código, mais difícil será de preserva-lo e rapidamente ele se desestruturará.

Já faz algum tempo que eu venho resumindo cada dica desse livro e publicando em um post separado com o objetivo de ser utilizado com material de referência e estudos. Veja nessa categoria.

“Portanto, estejam com a mente preparada, prontos para agir; estejam alertas e coloquem toda a esperança na graça que lhes será dada quando Jesus Cristo for revelado.” 1 Pedro 1:13