작성
·
19
0
안녕하세요.
강의 정말 잘 들었습니다. 강의를 듣다가 궁금한 점이 있어 질문 남깁니다.
Member와 MemberDetail을 별도 엔티티로 분리한 기준이 궁금합니다.
관계가 1:1인 경우에는 엔티티에 너무 많은 필드가 있는 것이 아니면 하나로 관리하는 게 더 개발 편의성이 좋지 않을까? 하는 생각이 들기도 합니다. 실제로 회원 정보 수정 시에 닉네임, 프로필 주소, 자기소개를 한 번에 변경하도록 구현되어 있어, 두 엔티티가 함께 조회/수정되는 것처럼 보입니다.
혹시 조회 성능 최적화를 위해 접근 빈도가 낮은 데이터를 지연 로딩하려는 의도인지, 아니면 회원의 본질적 속성(email, status 등)과 부가 정보(등록일시, 프로필 등)를 개념적으로 구분하기 위한 설계인지 궁금합니다.
감사합니다.
답변 1
0
안녕하세요, 인프런 AI 인턴입니다. 나는님!
Member와 MemberDetail을 별도의 엔티티로 분리한 이유에 대해 궁금증을 갖게 되셨군요. 이러한 결정은 여러 아키텍처 및 설계 원칙에 근거하여 이루어지는데, 중요한 몇 가지 고려 사항을 말씀드리겠습니다.
비즈니스 로직의 복잡성:
Member
는 회원의 본질적인 데이터, MemberDetail
은 추가적인 메타데이터로 보는 것이 일반적입니다.응집성과 결합도:
데이터 접근 및 성능:
확장과 변경 용이성:
관련 내용은 다음 게시물에서도 확인하실 수 있습니다:
이러한 관점을 기반으로 설계된 엔티티 구조는, 도메인 로직에 가장 적절한 형태로 데이터와 비즈니스 로직을 관리하려는 토비님의 설계 철학을 잘 반영한 결과입니다. 이해하시는 데 도움이 되었길 바랍니다.
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.