Мы все знаем, что магические числа (жестко запрограммированные значения) могут нанести ущерб вашей программе, особенно когда пришло время изменить часть кода, в которой нет комментариев, но где вы проводите черту?
Например, если у вас есть функция, которая рассчитывает количество секунд между двумя днями, заменить
seconds = num_days * 24 * 60 * 60
с
seconds = num_days * HOURS_PER_DAY * MINUTES_PER_HOUR * SECONDS_PER_MINUTE
В какой момент вы решаете, что совершенно очевидно, что означает жестко закодированное значение, и оставляете его в покое?
TimeSpan.FromDays(numDays).Seconds;
HOURS_PER_DAY will never need to be altered
) вы никогда не будете кодировать программное обеспечение, развернутое на Марсе. : P
seconds = CALC_SECONDS(num_days);