NÚMEROS MÁGICOS
Números mágicos são uma das maneiras de escrever código limpo.
Bem-vindo Meu amigo, agora vamos falar sobre um princípio importante que torna o código mais fácil de ler e alterar e faz com que o código tenha um cheiro bom.
Em primeiro lugar, vamos explicar o que são code smells, o code smell é um indicador de problemas que podem ser resolvidos durante a refatoração, é fácil de detectar e detectar e também corrigi-los.
suponha comigo que depois de terminar sua tarefa de codificação que leva 8 horas e diz OMG eventualmente concluído, leva muito tempo !!!, E você empurrou seu código e um monte de código é assim.
double deductFromStanderdEmployee(JouniorEmployee standerdEmployee){
standerdEmplyee.gross= standerdEmplyee.gross - (3.3 + 2.3) / 100 * standerdEmplyee.gross;
}
agora o líder da equipe precisa mudar os serviços médicos para 3,5 por cento e ele ordena que seu amigo faça isso.
seu amigo agora olha o código e a impressão dele qual número é o imposto de serviços médicos 3.3 ou 2.3 ?️
Então agora o problema está muito claro, você usa um valor único com significado inexplicável que é um número mágico significa. é melhor usar uma constante nomeada para identificar seu número mágico. Vamos fazer algumas refatorações em seu código, meu amigo.
const double GOVERNMENTAL_TAXES_PERSENTAGE=3.3;
const double MEDICAL_SERVICES_TAXES_PERSENTAGE=2.3;
double deductFromStanderdEmployee(JouniorEmployee standerdEmployee){
standerdEmplyee.gross= standerdEmplyee.gross - (GOVERNMENTAL_TAXES_PERSENTAGE + MEDICAL_SERVICES_TAXES_PERSENTAGE) / 100 * standerdEmplyee.gross;
}
agora você está perguntando o que cerca de 100 não é um número mágico?
Eu vou dizer Não, não é um número mágico, podemos notar que calculamos o percentual, então fica muito limpo e encalhado. é como um loop for, por exemplo:
for (int i=0;i<n;i++){
//some code here;
}
Em resumo , notamos que os números mágicos geram alguns conflitos, então temos que perceber bem em nossa refatoração para não cair nesses erros.
Obrigado por ler Espero conhecê-lo no meu próximo artigo.





































![O que é uma lista vinculada, afinal? [Parte 1]](https://post.nghiatu.com/assets/images/m/max/724/1*Xokk6XOjWyIGCBujkJsCzQ.jpeg)