intermediate

Design Patterns

Используйте named design patterns как vocabulary для recurring creation, composition, behavior, frontend и backend design problems.

На интервью по паттернам проверяют узнавание повторяющейся структуры и суждение о цене — а не заучивание Gang of Four. Объясните, какую проблему решает паттерн, чего стоит и чем замените в маленькой кодовой базе.

Охват: creational, structural и behavioral GoF, frontend-паттерны (container/presentational, compound components, hooks) и backend (repository, unit of work, service layer, DTO, DI, middleware).

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

Типовые ошибки: одержимость паттернами, путаница похожих (strategy vs state), паттерн без явной точки вариации.

Чеклист:

  • Начинайте с потребности в расширении или вариации.
  • Сравните цену паттерна с простой функцией или модулем.
  • Свяжите паттерн с библиотекой или фреймворком из опыта.
  • Упомяните влияние на тестируемость.