Сервис обеспечит пользователям возможность рассказывать, какими вещами они готовы поделиться, а также находить нужную вещь и брать её в аренду на какое-то время.
Sprint №13
- Модели данных — Item и User, Booking, ItemRequest
- Хранение данных в памяти приложения
- Создание каркаса приложения. Структура не по типам классов, а по фичам (англ. Feature layout)
- Создание DTO-объектов, которые будут возвращаться пользователям через REST-интерфейс в ответ на их запросы и Mapper-ов
- В приложении будет три классических слоя — контроллеры, сервисы и репозитории. В этом спринте основная работа преимущественно с контроллерами.
- Тестирование Postman
Sprint №14
- Подключение баз данных PostgreSQL,H2
- Работа с JPA
- Реализация функции бронирования
- Добавление отзывов
Sprint №15
-
Реализация запроса вещи
-
Добавление пагинации
-
Покрытие тестами
- Реализовать юнит-тесты для всего кода, содержащего логику.
- Реализовать интеграционные тесты, проверяющие взаимодействие с базой данных.
- Реализовать тесты для REST-эндпоинтов с использованием MockMVC.
- Реализовать тесты для слоя репозиториев (кастомные запросы) с использованием аннотации @DataJpaTest.
- Реализовать тесты для работы с JSON для DTO с помощью аннотации @JsonTest.
Sprint №16
- Многомодульная ркализация.
- Разбить приложение ShareIt на два — shareIt-server и shareIt-gateway.
- Вынести в shareIt-gateway всю логику валидации входных данных — кроме той, которая требует работы с БД.
- Настроить запуск ShareIt через Docker. Приложения shareIt-server, shareIt-gateway и база данных PostgreSQL должны запускаться в отдельном Docker-контейнере каждый. Их взаимодействие должно быть настроено через Docker Compose.