해결된 질문
작성
·
310
0
[질문 내용]
질문 게시판에 글을 읽다 보니
public class AppConfig {
public MemberService memberService() {
return new MemberServiceImpl();
}
public MemeberRepository memberRepository() {
return new MemoryMemberRepository();
}
}
public class MemberServiceImpl implements MemberService {
AppConfig appConfig = new AppConfig();
MemberRepository memberRepository = appConfig.memberRepository();
@Override
public void join(Member member) {
memberRepository.save(member);
}
@Override
public Member findMember(Long memberId) {
return memberRepository.findById(memberId);
}
}
위와 같은 코드형식은 MemberServiceImpl이 AppConfig를 의존하는 형식이 되기 때문에 생성자를 사용하여 불필요한 의존관계를 줄인다고 보았습니다.
그렇다면 강의에서 Main 메서드나 Test 코드에서 service를 사용하기 위해 Appconfig를 사용하는 것은 Main 메서드가 AppConfig를 의존한다고 볼 수 있지 않나요?
위에서 얘기한 이유로 MemberServiceImpl에서 AppConfig를 사용하지 않는다면 Main 메서드에서는 왜 AppConfig를 사용하는지 의문입니다.