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

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

H K님의 프로필 이미지
H K

작성한 질문수

스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술

회원 서비스 개발

네이밍 질문

작성

·

212

0

서비스랑, 레포지토리랑

메소드 이름을 일치하게는 하면 안되나요 ?

ex) 회원가입  서비스, 레포지토리 메소드 :  join(..) 

답변 1

0

안녕하세요. H K님, 공식 서포터즈 David입니다.

1. 나중에 spring data jpa를 사용하게 되면 기본적으로 제공해주는 메서드들이 있습니다. findById() 같은 경우 기본적으로 제공해주는 메서드에 속합니다.

2. repository 내 findById 메서드가 있다면 id로 엔티티를 찾아오는 곳에서는 모두 findById를 사용할 수 있습니다. 그러나 id를 조건으로 엔티티 하나를 찾아오는 메서드명을 findById 대신 join으로 나타내게 된다면 MemberService 내 join 메서드 안에서는 맥락에 맞는 메서드명이지만 다른 곳에서는 join(회원가입)이라는 이름이 맥락상 맞지 않습니다. 굳이 사용하려면 할 수 있지만 인지부조화는 덤으로 따라올 것입니다.

3. 2번과 같은 이유로 service의 메서드명들은 비즈니스로직을 잘 타나내는 (repository보다 추상화된) 이름으로 메서드명을 사용하게 됩니다.

감사합니다.

H K님의 프로필 이미지
H K

작성한 질문수

질문하기