Курс по рефакторингу web‑приложения IShop поможет вам глубже разобраться в архитектуре Java‑проектов, понять принципы работы Spring, Spring Data и JPA, а также научиться применять профессиональные подходы к модернизации и масштабированию существующего кода. Это практический курс, основанный на реальном проекте и типичных задачах Java‑разработчика.
Что вы изучите на курсе
Обучение построено вокруг поэтапного рефакторинга рабочей версии web‑приложения IShop. Вы будете разбирать реальные проблемы, которые возникают при расширении функциональности, изменении архитектуры и внедрении современных фреймворков.
Ключевые направления курса
- Использование возможностей Java Reflection для создания гибкого и переиспользуемого кода.
- Понимание того, как устроены популярные Java‑фреймворки «изнутри».
- Формирование навыка проектирования универсальных решений, применимых в любых проектах.
Основные технологии и концепции
В ходе курса вы шаг за шагом разберёте фундаментальные механизмы, лежащие в основе крупных Java‑фреймворков.
Работа ORM‑фреймворков
Вы изучите принципы объектно‑реляционного отображения и увидите, как ORM управляет сущностями, транзакциями и взаимодействием с базой данных.
Внедрение зависимостей (IoC, DI)
Будет подробно рассмотрено, как работает инверсия управления и контейнеры зависимостей, а также как эти подходы помогают создавать гибкие модульные приложения.
Декларативное управление соединениями и транзакциями
С помощью AOP вы поймёте, как фреймворки позволяют прозрачно управлять технической логикой без дублирования кода.
Шаблон проектирования Repository (DAO)
На примере создания собственного мини‑фреймворка devstudy вы разберёте, как формируются уровни доступа к данным и какие практики делают этот слой расширяемым и удобным.
Создание собственного фреймворка devstudy
Одной из ключевых частей курса является разработка облегчённого аналога Spring, Spring Data и JPA. Это позволит вам увидеть:
- как работают фреймворки на низком уровне;
- какие проблемы они решают;
- как применять их механизмы в собственных проектах.
Переход на промышленные решения
После создания devstudy вы замените его на Spring, Spring Data и JPA, чтобы закрепить понимание и увидеть, как реальные инструменты интегрируются в проект.
Требования к участникам
Для успешного прохождения рекомендуется предварительно завершить курс Web приложение – IShop. Это необходимо для того, чтобы вы понимали архитектуру проекта и осознавали, какие задачи и проблемы предстоит решать в процессе рефакторинга.
Для кого подходит этот курс
- Java‑разработчикам, стремящимся понять механику Spring, Spring Data и JPA на фундаментальном уровне.
- Тем, кто хочет научиться грамотно расширять и рефакторить существующие приложения.
- Специалистам, желающим глубже разобраться в архитектуре и проектировании Java‑приложений.