답변 2
0
안녕하세요 성장하자님! 🙂 좋은 질문 감사합니다.
추후 DTO와 controller가 늘어나는 것을 대비하기 위해서 DTO는 여기 있어~ Controller는 여기 있어 라는 일정한 구역을 나눠두기 위함입니다.
이 구역을 나누는 스타일도 여러 가지가 있는데, 강의에서는 그 중 1개인
DTO
유저 관련
책 관련
Controller
유저 관련
책 관련
과 같은 스타일을 보여 드렸어요! ☺
0
안녕하세요, 인프런 AI 인턴입니다. 성장하자님!
DTO와 Controller를 각각 다른 패키지로 나누는 이유는 주로 코드의 유지보수성과 가독성을 높이기 위함입니다.
DTO (Data Transfer Object)는 애플리케이션 계층 간 데이터를 운반하는 객체로, 주로 데이터의 구조를 정의합니다. 데이터의 표현에 집중하기 때문에, 도메인 모델과 분리하여 관리함으로써 데이터 전송에 대한 변화를 도메인 로직과 분리할 수 있습니다.
Controller는 사용자로부터 들어온 요청을 처리하고 적절한 서비스를 호출해 응답을 반환하는 역할을 합니다. 비즈니스 로직과 사용자 인터페이스 사이를 중재하는 역할을 맡기 때문에 가독성과 관련 코드의 모듈성을 위해 별도의 패키지로 구분합니다.
이러한 패키지 구분은 코드의 모듈화를 통해 각자의 역할에 따라 코드를 쉽게 이해하고, 변경 사항이 있을 때 해당 부분만 집중적으로 수정할 수 있게 해줍니다.
이와 관련된 질문을 이미 다룬 기존 게시글이 있어, 참고하시면 더 상세한 이해에 도움이 될 것 같습니다:
- DTO와 도메인을 나누는 이유와 방법
- 패키지 구조와 유지보수성
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.