[개발] - Spring/핵심 원리 구현
AppConfig 리팩터링
완벽한 장면
2024. 1. 16. 19:07
AppConfig 리팩터링
현재 AppConfig를 보면 중복이 있고, 역할에 따른 구현이 잘 보이지 않는다.
기대하는 그림
AppConfig 리펙토링
// 애플리케이션의 전체 동작 방식을 구성(config)하기 위해, 구현 객체를 생성하고, 연결하는 책임을 가지는 별도의 설정 클래스
public class AppConfig {
//역할들을 드러나게 바꾼다!
// ctrl alt M
public MemberService memberService() {
return new MemberServiceImpl(memberRepository());
}
public OrderService orderService() {
return new OrderServiceImpl(memberRepository(), discountPolicy());
}
public MemberRepository memberRepository() {
return new MemoryMemberRepository();
}
public DiscountPolicy discountPolicy() {
return new FixDiscountPolicy();
}
}
728x90
반응형