Обновление материалов роадмапа - БД миграции и Spring MVC



👩‍💻 Spring MVC вместо сервлетов в проекте "погода"



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



Статьи и стримы с объяснением этого подхода:

Зачем писать пет-проекты с устаревшими технологиями?

Как учить новые технологии: гайд



Для Java, проекты роадмапа на легаси стеке - с третьего по пятый. Spring (сразу Spring Boot) начинался с шестого. Однако, седьмой проект мало кто дописывает, потому что хард скиллов от шестого вполне достаточно для поиска работы.



Получалось, что во всём роадмапе больше всего внимание из полноценных проектов на Spring получал шестой проект - облачное хранилище.



Чтобы подстроиться под это, плюс сгладить переход от легаси к современному стеку и помочь получить больше опыта со Spring, я изменил ТЗ проекта #5 - "погода":

• Используем Spring MVC. Хороший промежуточный шаг между сервлетами и Spring Boot

• Не используем Spring Security и Spring Session, потому что основная цель проекта "погода" - понять работу сессий, авторизации и cookies на низком уровне



Идея витала в воздухе, есть достаточно много реализаций этого проекта на Spring.



Вопросы:



Q: Я уже начал писать проект на сервлетах, стоит ли менять подход и писать на Spring MVC?

A: Не принципиально. Но если идея нравится и время есть - можно



Q: Какие модули и компоненты Spring MVC можно использовать в 5 проекте?

A: Все необходимые, кроме работы с сессиями



Q: Как деплоить проект на Spring MVC?

A: Так же как проект на сервлетах, в Tomcat



👩‍💻 БД миграции



БД миграции - регулярно встречающийся в коммерческих проектах инструмент. В пет проектах роадмапа структура БД сильно проще, чем в большинстве коммерческих, но тем не менее опыт работы с миграциями не помешает.



Java роадмап:

Теория и избранные образовательные ресурсы по Flyway, Liquibase

• Практика - миграции добавлены в ТЗ проектов с 5 по 7



Python роадмап:

Теория и избранные образовательные ресурсы по Django Migrations, Alembic

• Практика - миграции добавлены в ТЗ проектов с 5 по 7



Роадмап | YouTube | Менторство по трудоустройству | Консультации