Nous sommes tous conscients que les nombres magiques (valeurs codées en dur) peuvent causer des ravages dans votre programme, en particulier lorsqu'il est temps de modifier une section de code sans commentaires, mais où tracez-vous la ligne?
Par exemple, si vous avez une fonction qui calcule le nombre de secondes entre deux jours, remplacez-vous
seconds = num_days * 24 * 60 * 60
avec
seconds = num_days * HOURS_PER_DAY * MINUTES_PER_HOUR * SECONDS_PER_MINUTE
À quel moment décidez-vous qu'il est tout à fait évident de comprendre la valeur codée en dur et laissez-la tranquille?
TimeSpan.FromDays(numDays).Seconds;
HOURS_PER_DAY will never need to be altered
), vous ne coderez jamais pour les logiciels déployés sur Mars. : P
seconds = CALC_SECONDS(num_days);