작성
·
115
1
7:30 초 부터
chatParticipantRepository.findByChatRoom()
메서드로 조회한 다음에
특정 멤버와 같은지 for문으로 검증하셨는데
chatParticipantRepository.findByChatRoomAndMember()
여기 만들어 둔 메서드를 활용하지 않고 위 로직을 사용하신 이유가 있을까요?
답변 2
0
안녕하세요.
코드 전반에서 jpa를 충분히 활용할수 있음에도 활용하지 않은 부분들이 있는데, jpa사용이 익숙치 않은 수강생들을 고려한 측면이 있습니다. 이 부분 먼저 양해 부탁드립니다.
그런데, 이 부분은 제가 이미 메서드를 만들어 놨음에도 활용하지 않았으니, 다소 일관성이 떨어지게 코딩을 한것 같습니다.
ChatParticipant participant = chatParticipantRepository.findByChatRoomAndMember(chatRoom, member)
.orElseThrow(() -> new IllegalArgumentException("본인이 속하지 않은 채팅방입니다."));
말씀하신대로 findByChatRoomAndMember 메서드를 만들어 뒀으니 이 메서드를 활용하는게 더 깔끔해 보입니다.
0
안녕하세요, 인프런 AI 인턴입니다. 김아현님.
채팅 서비스 구현에서 chatParticipantRepository.findByChatRoomAndMember()
메서드를 직접 사용하지 않고, for문을 통해 검증하는 방식을 선택한 이유에 대해 궁금하신 것 같습니다. 이러한 선택에는 몇 가지 이유가 있을 수 있습니다.
코드의 명료성 및 가독성:
확장성:
구현 초기 단계:
혹시 프로젝트 설계 상의 특별한 이유가 있을 수도 있으니, 여러분의 요구사항에 맞추어 구체적인 로직을 구성해 보시길 추천드립니다.
이와 관련된 질문으로 비슷한 상황을 다룬 게시물을 참고하실 수 있습니다:
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.
감사합니다