녕의 학습 기록
[Spring 기본] 객체 지향 원리 적용 (2) 본문
♪ 학습 내용
AppConfig를 통한 관심사의 분리
* AppConfig
애플리케이션 전체 동작방식을 구성(configuration) / 설정한다.
구현 객체를 생성하고 연결
* 생성자 주입
생성자 주입 == 생성자를 통해 객체를 주입시킨다
이전과는 달리 오로지 인터페이스에 대한 내용만 있음.
즉, 추상화에만 의존하였고 DIP를 지키고 있다.
의존 관계에 대한 고민은 외부(AppConfig)에 맡기고 실행에만 집중
객체를 생성하고 연결하는 역할과 실행하는 역할이 구분되었다.
= > 관심사의 분리
* AppConfig 실행
기존에는 MemberServiceImpl을 직접 생성하고 그 MemberServiceImpl이 또 저장소 구현체를 생성했지만,
이제는 AppConfig를 통해 생성하고 주입 받는다
즉, AppConfig가 객체 생성과 어떤 객체를 할당할지를 담당한다.
- @BeforeEach
각 테스트 실행 이전에 해당 내용을 매번 실행한다
appConfig는 메모리 구현객체를 생성하고 그 값을 멤버 서비스 구현 객체를 생성하며 생성자로 전달한다
클라이언트 입장인 멤버서비스구현 입장에서는 의존관계를 외부에서 주입해주는 느낌
== DI (Dependency Injection) == 의존관계 주입
여기까지 AppConfig를 통해 관심사를 확실하게 분리했다.(객체 생성, 주입 / 실행)
♪ 다음 학습 내용
AppConfig의 문제점을 알아보고 더 나은 방향으로의 리팩터링
스프링 핵심 원리 - 기본편 - 인프런 | 강의
스프링 입문자가 예제를 만들어가면서 스프링의 핵심 원리를 이해하고, 스프링 기본기를 확실히 다질 수 있습니다., - 강의 소개 | 인프런...
www.inflearn.com
'Dev > Spring' 카테고리의 다른 글
[Spring 기본] 객체d 지향 원리 적용 (4) (0) | 2022.11.01 |
---|---|
[Spring 기본] 객체 지향 원리 적용 (3) (0) | 2022.11.01 |
[Spring 기본] 객체 지향 원리 적용 (1) (0) | 2022.10.30 |
[Spring 기본] 핵심 원리 예제 (4) (0) | 2022.10.28 |
[Spring 기본] 핵심 원리 예제 (3) (0) | 2022.10.27 |