Встречается на 2% собеседований по Python

Что такое YAGNI

YAGNI (You Aren't Gonna Need It) — принцип разработки, который гласит, что не следует добавлять функциональность, пока она не понадобится. Это часть методологии экстремального программирования (XP), направленная на избежание избыточного кода и усложнения системы.

Пример:
Допустим, вы пишете класс User и предполагаете, что в будущем понадобится метод для проверки ролей. Вместо:

python
class User:
    def __init__(self, name):
        self.name = name
    
    def has_role(self, role):  # YAGNI: пока не требуется
        return False

Лучше добавить метод позже, когда потребность действительно возникнет.

Плюсы:

  • Меньше кода → меньше багов.
  • Экономия времени на ненужные фичи.
  • Упрощение рефакторинга.

Нюансы:
Не путать с продуманной архитектурой — базовые интерфейсы или абстракции стоит проектировать заранее, если их изменение будет дорогим.

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы