Diego França

Clean Code – Números mágicos

As vezes pensamos que para refatorar um código e torná-lo mais legível precisamos de fazer algo complexo, mas nem sempre isso é necessário, as vezes trocar um nome de uma variável para um nome que condiz com o que ela realmente faz, já é um grande passo.

No último final de semana, estava estudando sobre TDD e resolvi desenvolver um código simples de login , nesse algoritmo tinha alguns códigos de status de resposta como 400, 401, 403, 422 e etc, que eu tinha adicionado diretamente no código. Logo pensei: “Será se alguém que não tenha conhecimento de códigos de status de resposta saberia o que isso significa?”

Com isso na cabeça foi então que comecei a pensar em como resolver e me lembrei de algo que tinha lido no Clean Code sobre eliminar números mágicos e segundo Robert Martin isso deve-se ser evitado no seu código, pois provoca bugs e dificuldades no entendimento do código.

Para quem não conhece esse termo, o número mágico são aqueles númerso que colocamos no nosso código e precisa de uma explicação para entender o porquê deles estarem ali.

Para resolver esse code smells deve-se utillizar constantes para representar esses valores.

Nessa primeira imagem eu mostro como o código estava com os números mágicos.

 Criei uma nova classe onde defini algumas constantes para representar os códigos de resposta:

Depois troquei os números pelas constantes e pode-se ver o quanto melhorou o entendimento do código: