О курсе:
Лучший способ обучения программированию - практика!
Как поднять уровень Java-разработчика на порядок?
- Выполнит небольшой и интересный в реализации проект "Голосования
за рестораны"
Стек: Spring-Boot/Spring Data JPA/Open API or Sawagger, REST API without frontend
Проект очень похож на типовое тестовое задание на должность Middle/Senior Java разработчика - Получить 1-е ревью от наших кураторов стажировки: стиль, проектирования REST API, архитектура, бизнес модель, код
- Исправить замечания (срок - до нескольких недель)
- Получить финальное ревью проекта от автора ресурса: Григория Кислина
- Получить доступ к разбору реализация приложения по шагам, см. программу
Рекоммендации:
- Для разбора реализации необходим опыт в Spring/Spring Boot
Оптимально - после окончания стажировки Enterprise Java-разработчик (TopJava) - Перед активацией курса сделать свое решение
выпускного
проекта.
Только тогда от разбора моего решения будет максимальная польза.
Что входит в референсную реализацию:
Материалы проекта в текстовом виде + код, аналогично уроку 6
BootJava
Быстро, удобно, ничего лишнего.
Проверок нет, в конце есть небольшая самостоятельная доработка
- Доступ к разбору реализация приложения по шагам, от простого к сложному
- Начальный проект и патчи для его обновления (или общий патч для финального приложения)
- Чат в Slack для общения и обмена опытом (на каждое занятие - свой канал)
- Ответы на все вопросы и помощь с проектом
Для участников стажировки TopJava без проверки ДЗ:
полное ревью выпускного проекта
Ревью кураторов стажировки -> твои правки -> финальное ревью
ОплатитьПрограмма:
В проекте не используется Spring Data Rest/HATEOAS.
Код основан на миграции проекта TopJava на Spring Boot на стеке: JDK 17, Spring Boot 3.x, Lombok, H2, Caffeine Cache, Swagger/OpenAPI 3.0, MapStruct, Liquibase
Код основан на миграции проекта TopJava на Spring Boot на стеке: JDK 17, Spring Boot 3.x, Lombok, H2, Caffeine Cache, Swagger/OpenAPI 3.0, MapStruct, Liquibase
Репозиторий для инициализации проекта
git clone https://github.com/javaOPs/topjava2.git
- Настройка проекта
- Создание модели и популирование данных
- Администрирование ресторанов (с тестами)
- Администрирование еды и меню (с тестами)
- Вывод ресторанов с меню на сегодня
- Решение десериализации READ_ONLY в тестах через JSON View
- Тестирование ресторанов с меню
- Просмотр своих голосов
- Тестирование истории голосования
- Реализация голосования и пере-голосования
- Тестирование голосования. Возможные проблемы тестирования
- Вводим в модель справочник еды
- Добавляем принадлежность еды ресторану
- Администрирование справочника еды
- Исправляем отображение меню на сегодня
- Кэширование
- Вынесение дедлайна в конфигурацию
- Автогенерация маппинга: MapStruct
- Миграция БД: Liquibase
- Добавляем роль администратора ресторанов
- Реализуем ограничение на администраторов ресторанов
- Обновление версий и рефакторинг
- Заключение: ваша доработка