Skip to content

Conversation

@aKorishev
Copy link
Owner

No description provided.

import lombok.Builder;

@Builder
public record ItemToUpdateDto(

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Нужно добавить аннотации для валидации

Copy link
Owner Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Не нужно. Нет правил к заполнению

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ок, если частично обновлять, то не нужно.

import ru.practicum.shareit.rest.RestService;

@Service
public class BookingService extends RestService {

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Эти классы не логично называть Service, т.к. в них нет никакой бизнес-логики по работе с сущностями. Лучше назвать RestClient и BookingClient и пометить аннотацией @Component

Copy link
Owner Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Сервис, потому что стоят за контроллером. А клиентом не хочу называть, т.к. клиент внутри используется.
И бизнес-логика подразумевалась в задании, в описании маршрутизации рест-запросов

Copy link

@VadimZharkov VadimZharkov Dec 7, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Классы получают аннотацию @Service потому что они принадлежат сервисному слою приложения, а не потому что стоят за контроллером. Маршрутизация -это не бизнес-логика. В задании как раз говорится, что "shareIt-server будет содержать всю основную логику ", а в shareIt-gateway нужно вынести "всю валидацию входных данных".

PS
Если хочешь подчеркнуть, что основная задача класса маршрутизация, то можно назвать Router

Copy link

@VadimZharkov VadimZharkov left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

В тесты нужно добавить интеграционные тесты. Это когда хранилище не мокаем, а используем реальную базу. В данной работе достаточно будет протестировать репозитории с помощью @DataJpaTest

Copy link

@VadimZharkov VadimZharkov left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Нужно еще доработать

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants