Вопрос проверяет понимание читаемости, поддержки и управления изменяемыми параметрами в коде.
Из логики стоит выносить значения, которые имеют смысловое значение и могут меняться. Это улучшает читаемость и снижает риск ошибок. Константы позволяют избежать “магических чисел” и строк. Также их проще централизованно изменить.
Константы — это именованные значения, которые не должны изменяться в процессе выполнения программы.
Перед перечислением важно подчеркнуть:
имя константы объясняет почему используется значение, а не только что это за число.
Магические числа (100, 60, 86400)
Строковые коды ("ACTIVE", "FAILED")
Пороги и лимиты
Таймауты и интервалы
Значения по умолчанию
MAX_RETRIES = 3
TIMEOUT_SECONDS = 5
def fetch_data():
for _ in range(MAX_RETRIES):
...
В начале модуля
В отдельном файле constants.py
В конфигурации (если меняются без деплоя)
Слишком мелкие константы без смысла
Дублирование одинаковых значений
Смешивание конфигурации и логики
Вынесенные константы делают код самодокументируемым и устойчивым к изменениям. Это простая практика с большим эффектом.