Вступить в клуб →
средняявопросLegacy-код, SOLID и статический анализ

Класс OrderManager на 5 000 строк знает про оплату, склад, письма и отчёты

Любое изменение в OrderManager задевает соседние функции, конфликты слияния — ежедневно, протестировать класс невозможно. Техлид предлагает разбить его, но релизы идут каждую неделю, и остановить разработку на месяц нельзя.

Как действовать?

  • Выносить ответственности в классы по одной, под тестами
  • Остановить разработку и переписать класс за месяц
  • Разбить файл на трейты по 500 строк
  • Переименовать класс в OrderService

🔒 Проверка ответа — для участников клуба

  • Проверка ответа
  • Подсказка, если застряли
  • Разбор с объяснением, почему так
  • Прогресс по всем задачам и виртуальные собеседования
Зарегистрироваться →

Регистрация занимает минуту

Другие задачи раздела