🎾 Релиз материалов расширенной версии роадмапа для проекта “Табло теннисного матча

Доступно в рамках учебной подписки.

Для кого созданы, и какую проблему решают

  • Реализация бизнес логика в рамках богатой доменной модели
  • Покрытие бизнес логики юнит тестами
  • Разбор деплоя Java web приложения

Подробнее про цель продукта, баланс между открытыми и закрытыми материалами - https://zhukovsd.it/posts/my-first-product-extended-roadmap/

Что внутри

  • Эталонная реализация проекта “Табло теннисного матча” на Java
  • Разработка проекта в 8 шагов
  • Для каждого шага доступен код, комментарии всех принятых решений
  • Лекция по деплою
  • Стек - Java, Spring MVC, Postgres, JUnit

Основной образовательный аспект проекта - реализация бизнес логика в рамках богатой доменной модели, плюс покрытие её юнит тестами. Дополнительно, все эндпоинты покрыты ручными тестами.

Для усложнения, сверх описанного в ТЗ функционала реализован подсчёт очков матча разного формата (форматы отличаются количеством сетов, правилами геймов и тайбрейка), что раскрывает пользу и смысл использования богатой доменной модели.

Шаги реализации

  • Инициализация проекта на Spring MVC
  • Подключение Hibernate, Postgres
  • Топорная реализация бизнес логики подсчёта очков в одном классе-сервисе
  • Листинг завершённых матчей с фильтрацией и пагинацией
  • Рефакторинг подсчёта очков в рамках богатой доменной модели
  • Конфигурируемые форматы матчей
  • Интеграция фронтенда
  • Юнит тесты бизнес логики

Плюс деплой (установка Postgres, Tomcat, сборка и деплой war артефакта).

Публично выпущенные лекции в помощь работающих над проектом

Команда проекта

  • Сергей @zhukovsd - постановка требований, ревью
  • Василий @Chearkov - реализация проекта, запись лекции по деплою

Как получить доступ

Эта подписка даёт доступ ко всем эталонкам (их сейчас 4), одно ревью в месяц, приоритет на командный проект и скрининги на менторство по трудоустройству.

Цена вопроса - 2500р/месяц.

Что дальше

Продолжаю развитие расширенной версии роадмапа и выпуск материалов по следующим проектам.