-
카테고리
-
세부 분야
백엔드
-
해결 여부
해결됨
AppConfig에 관한 질문
23.12.19 17:11 작성 23.12.19 17:12 수정 조회수 204
0
[질문 템플릿]
1. 강의 내용과 관련된 질문인가요? 예
2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예
3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예
[질문 내용]
안녕하세요 수업중에 의문점이 생겨서 질문드립니다.
public class AppConfig {
private MemberRepository memberRepository(){
return new MemoryMemberRepository();
}
private DiscountPolicy discountPolicy(){
return new RateDiscountPolicy();
}
public MemberService memberService(){
return new MemberServiceImpl(memberRepository());
}
public OrderService orderService(){
return new OrderServiceImpl(memberRepository(),discountPolicy());
}
}
객체의 인스턴스를 만들때 이렇게 정의한것과
public class AppConfig {
private MemberRepository memberRepository = new MemoryMemberRepository();
private DiscountPolicy discountPolicy = new RateDiscountPolicy();
public MemberService memberService(){
return new MemberServiceImpl(memberRepository);
}
public OrderService orderService(){
return new OrderServiceImpl(memberRepository,discountPolicy);
}
}
이렇게 정의했을때의 차이점이 있나요?
제 생각에는 오히려 위의 경우가 Memberservice,Orderservice에서 memberRepository()를 두번 사용하니 new로 서로 다른 인스턴스가 생성되어 만약 memorymemberRepository의 저장소가 static이 아니라면 오류가 생길것 같은데 제 생각이 잘못된 것인지 궁금합니다,
답변을 작성해보세요.
답변 1