Этот вопрос проверяет понимание паттернов именования и признаков плохого кода (code smells).
Лингвистические паттерны — это соглашения по именованию сущностей в коде, которые улучшают читаемость (например, CamelCase для классов). Code smells — это симптомы в коде, которые указывают на потенциальные проблемы дизайна (например, длинные методы или дублирование кода).
Правильные именования и избегание code smells critical для поддержания качества кода.
Лингвистические паттерны:
CamelCase: Для классов и типов (например, MyClass).
snake_case: Для переменных и функций (например, my_variable).
Предикаты для булевых переменных: is_valid, has_permission.
Глаголы для методов: calculate_total(), get_user().
Code smells:
Длинный метод: Метод, который делает слишком много.
Большой класс: Класс с слишком многими responsibilities.
Дублирование кода: Повторение одинаковой логики.
Магические числа: Использование чисел без объяснения.
Пример исправления code smell:
# До: магическое число
if temperature > 100:
print("Danger")
# После: именованная константа
MAX_SAFE_TEMP = 100
if temperature > MAX_SAFE_TEMP:
print("Danger")