Skip to content

Conversation

@kimsky247-coder
Copy link

안녕하세요 혜빈님! 이번 미션도 잘 부탁 드립니다

프로젝트 구조

- controller
  * HomeController.java: 메인 페이지(/) GET 요청을 처리합니다.
  * ReservationController.java: 예약 관련 API요청을 처리합니다.
  * ReservationViewController.java: 예약 관리 페이지 요청을 처리합니다.

- domain
  * Reservation.java: 예약의 핵심 데이터(ID, 이름, 날짜, 시간)를 정의하는 도메인 객체.

- dto
  * ReservationRequest.java: 예약 생성 요청 데이터를 담는 DTO.
  * ReservationResponse.java: API 응답 데이터를 담는 DTO.

- exception
  * BadRequestReservationException.java: 400 Bad Request에 해당하는 커스텀 예외.
  * NotFoundReservationException.java: 404/400 (찾을 수 없음)에 해당하는 커스텀 예외.
  * GlobalExceptionHandler.java: 모든 컨트롤러의 예외를 전역적으로 처리하는 핸들러.

- service
  * ReservationService.java: 비즈니스 로직(유효성 검사, 저장/삭제 로직)을 담당하는 서비스 계층

궁금한 점

3, 4단계를 구현하면서 Controller의 역할이 많아져 ReservationService클래스를 만들어 데이터 저장, 비즈니스 로직, 유효성 검증을 담당하도록 분리하였습니다. 역할을 분리하면서 현재 Service가 너무 많은 책임을 지고 있지는 않은지 궁금합니다. 또한, 이와 관련해서 유효성 검증 로직을 DTO로 옮겨서 처리하고, Service는 핵심 비즈니스 로직에만 집중하도록 하는 것이 더 올바른 역할 분리인지 의견을 듣고 싶습니다!

@c0mpuTurtle
Copy link

(수정 중)

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.

2 participants