Não sei se é só comigo, mas quando começo a refatorar algum código, perco muito tempo fazendo isso e isso nunca acaba.
Toda vez que leio o código novamente, encontro algo que pode ser aprimorado, a refatoração de código é como meu cérebro em um loop infinito e o condicional final é alcançado aleatoriamente sem satisfação.
Então, quanto tempo devo dedicar à refatoração do meu código?
Respostas:
Se você tratar a refatoração como algo próprio, e não como parte do processo de desenvolvimento, ela poderá se tornar interminável.
Se você seguir a abordagem de desenvolvimento orientada a teste do refator vermelho, verde, normalmente não precisará gastar muito tempo refatorando por dois motivos:
Você estará refatorando à medida que avança, para que não se torne uma tarefa gigantesca, apenas mais um pequeno passo no ciclo do TDD.
A "pressão" interna para obter o próximo teste escrito manterá seus esforços de refatoração em um nível sensato.
Se você estiver trabalhando com código legado, siga a "regra do escoteiro do tio Bob". Timebox-se por um curto período de tempo (digamos, 30 minutos) e tenha como objetivo verificar o código em um estado mais limpo do que era antes. Cada vez que você precisar tocar no código, o deixará um pouco melhor. Com o tempo, o código mais modificado será o mais legível e bem fatorado na sua base de código.
fonte