Skip to content

Repository files navigation

Shareit

Описание проекта

Аренда вещей — это приложение предлагает пользователям возможность арендовать товары, делать бронирование, оставлять отзывы и отправлять запросы на добавление новых товаров, а также делиться своими вещами с другими.

Основные возможности:

  • Пользователи:
    • Регистрация, обновление и получение профиля.
    • Создание и управление учетными записями.
  • Предметы:
    • Добавление, обновление и удаление предметов.
    • Поиск и просмотр доступных предметов.
    • Поиск предметов по запросам пользователей.
  • Заявки на аренду:
    • Создание, обновление и управление заявками на аренду.
    • Обработка запросов на аренду.
    • Подтверждение или отклонение бронирований.
  • Отзывы и комментарии:
    • Оставление комментариев и отзывов после аренды.

Функционал:

  • Микросервисная архитектура:
    • Приложение построено на двух модулях: шлюз-сервис и основной-сервис.
    • Gateway - модуль для первичной валидации пользовательских запросов и их передачи в серверный модуль.
    • Server - модуль основной бизнес-логики, обрабатывающий запросы, взаимодействующий с базой данных и отправляющий ответы пользователям.

Стек технологий

  • Java Core:
    • JDK версии 11: Современные возможности для высокого качества и производительности кода.- Фреймворки:
    • Spring Boot: Упрощает разработку и развертывание приложений.
  • Сетевое взаимодействие:
    • REST Api: Легкость и гибкость взаимодействия между клиентом и сервером, используя контроллеры для обработки запросов в формате JSON.
  • Валидация и обработка данных:
    • Lombok: Упрощает написание кода, генерируя часто используемые конструкции.
    • MapStruct: Упрощает маппинг данных между разными слоями приложения.
  • Базы данных:
    • PostgreSQL: высокая производительность и надежность.
    • JPA и Hibernate: упрощают взаимодействие с базами данных через Object-Relational Mapping (ORM).
  • Тестирование:
    • JUnit: фреймворк для модульного тестирования кода.
    • Mockito: библиотека тестирования для имитации зависимостей, через определение поведения @Moc объектов.
  • Виртуализация:
    • Docker: контейнеризация приложения для упрощенного развертывания и управления средой выполнения.

About

приложение позволяет размещать и арендовать различные предметы

Topics

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages