오늘이라도
[III. 객체 지향 원리 적용] 5. 새로운 구조와 할인 정책 적용 본문
반응형
※ 코드는 저작권 상 올릴 수 없다고 합니다 ㅜㅜ
1. 새로운 구조와 할인 정책 적용
- 처음으로 돌아가서 정액 할인 정책을 정률% 할인 정책으로 변경해보자.
- FixDiscountPolicy → RateDiscountPolicy
- 어떤 부분만 변경하면 되겠는가?
=> AppConfig의 등장으로 애플리케이션이 크게 사용 영역과, 객체를 생성하고 구성(Configuration)하는 영역으로 분리되었다.
- FixDiscountPolicy → RateDiscountPolicy로 변경해도 구성 영역만 영향을 받고, 사용 영역은 전혀 영향을 받지 않는다.
- AppConfig에서 할인 정책 역할을 담당하는 구현을 FixDiscountPolicy → RateDiscountPolicy객체로 변경했다.
- 이제 할인 정책을 변경해도, 애플리케이션의 구성 역할을 담당하는 AppConfig만 변경하면 된다.
- 클라이언트 코드인 OrderServiceImpl을 포함해서 사용 영역의 어떤 코드도 변경할 필요가 없다.
- 구성 영역은 당연히 변경된다. 구성 역할을 담당하는 AppConfig의 애플리케이션이라는 공연의 기획자로 생각하자.
- 공연 기획자는 공연 참여자인 구현 객체들을 모두 알아야 한다.
반응형
'인프런 > 스프링 핵심 원리 - 기본편 (김영한)' 카테고리의 다른 글
[III. 객체 지향 원리 적용] 7. 좋은 객체 지향 설계의 5가지 원칙의 적용 (0) | 2023.02.09 |
---|---|
[III. 객체 지향 원리 적용] 6. 전체 흐름 정리 (0) | 2023.01.20 |
[III. 객체 지향 원리 적용] 4. AppConfig 리팩터링 (0) | 2023.01.19 |
[III. 객체 지향 원리 적용] 3. 관심사의 분리 (0) | 2022.12.28 |
[III. 객체 지향 원리 적용] 2. 새로운 할인 정책 적용과 문제점 (0) | 2022.12.13 |