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: