인프런 영문 브랜드 로고
인프런 영문 브랜드 로고

인프런 커뮤니티 질문&답변

승빵님님의 프로필 이미지
승빵님

작성한 질문수

스프링 MVC 2편 - 백엔드 웹 개발 활용 기술

프로젝트 생성

아래 질문과 비슷한 내용이지만 조금 달라 질문드립니다.

작성

·

203

0

아래 나르비님 질문 domain-web 의존관계 관련해서 추가 질문드립니다. (https://inf.run/3Avx)

 

해당 강의에서 DTO 역할을 하는 ItemSaveForm을 web 밑에 뒀는데 해당 DTO를 domain 밑으로 가져가는 것은 어떨까요? 물론 이렇게 될 때 이름은 ItemSaveDto 등이 더 적합할것 같습니다. 그렇게 생각한 이유는

1. Web -> Domain 의존은 있어도 괜찮다.

2. 기존 Item 생성후 setter를 이용하는 부분을 리펙토링 하고 싶다. (아래와 같이 생성자로 전달)

        //성공 로직
Item item = new Item(form);
// item.setItemName(form.getItemName());
// item.setPrice(form.getPrice());
// item.setQuantity(form.getQuantity());

3. REST API 서버 역할을 하는데도 DTO가 필요하다.

 

입니다. 그래서 이전 질문한분의 생성자에 넣는 방법 + 패키지 구조 자체까지 domain으로 이동하는 방법은 어떻게 생각하시는지 질문드립니다.

답변 1

1

김영한님의 프로필 이미지
김영한
지식공유자

안녕하세요. 승빵님

지금처럼 단순한 경우에는 괜찮습니다.

그런데 복잡해지면, 폼에서는 매우 다양한 화면의 데이터들이 들어오게 됩니다. 그러면 화면에 대한 처리 때문에 도메인에 있는 DTO를 계속 수정하는 문제가 발생할 수 있습니다.

감사합니다.

 

승빵님님의 프로필 이미지
승빵님
질문자

답변 감사합니다!!

승빵님님의 프로필 이미지
승빵님

작성한 질문수

질문하기