YAPP-Github / 21st-ALL-Rounder-Team-2-BE

🎨 간편한 전시 관람 서비스, 아르티 ARTIE 🎨
Apache License 2.0
9 stars 0 forks source link

전시 도메인 리팩토링 - 패키지 구조 재구성, Exhibition 명칭 수정, DTO 네이밍 컨벤션 적용 #151

Open akalswl14 opened 1 year ago

akalswl14 commented 1 year ago

전시 도메인 ( Exhibit 전시, Artwork 작품, Category 카테고리 등 ) 리팩토링을 위해 아래와 같은 개선이 필요합니다.

패키지 구조 재구성

현재 전시 도메인은 com.yapp.artie.domain.archive 패키지 내에 존재합니다. 해당 패키지 내부에는 세부적인 전시 도메인으로 패키징되어있지 않아, 깔끔하지 못한 구조를 가지고 있습니다.

image

따라서, 이를 각각의 세부 도메인으로 분리하여 패키징해야합니다.

전시와 작품은 하나의 게시물과 같은 개념으로, 서로가 많은 의존성을 가지고 있기에, com.yapp.artie.domain.exhibit.domain 패키지 내에서 레이어드 아키텍처를 가지고, 내부적으로 또 패킹하는 구조로 구성하도록 의논하였습니다. ex ) 작품 서비스 클래스 : com.yapp.artie.domain.exhibition.domain.service.ArtworkService

전시 명칭을 Exhibition으로 수정

현재 전시 도메인은 Exhibit 또는 Post로 혼동되어 불리고 있습니다. 이는 코드 전반에서, 그리고 클라이언트와 소통할때에도 불편함을 초래하기에 수정이 필요합니다. 논의 결과 범용적으로 전시라는 의미를 가지는 Exhibition으로 통일함에 따라, 각 클래스, 파라미터, 메소드 이름 등에 수정이 필요합니다.

DTO 네이밍 컨벤션 적용

전시 도메인은 현재 컨벤션이 적용되지 않아, DTO 클래스의 가독성이 매우 떨어집니다.

image

이를 개선하기 위해, DTO 클래스는 아래와 같은 컨벤션을 따르는 것을 제안합니다.

CUD : Create/Update/Delete/등 CUD + Entity명 + 세부적인 유형 + Request/Response