728x90
3. 전략 패턴(strategy pattern)
: aka. 정책 패턴(policy pattern
: 객체의 행위를 바꾸고 싶은 경우 '직접' 수정하지 않고 전략이라고 부르는 '캡슐화한 알고리즘'을 컨텍스트안에서 바꿔주면서 상호 교체가 가능하게 만드는 패턴
EX) 어떤 것을 구매할 때 네이버페이, 카카오페이 등 다양한 방법으로 결제하는 것
(결제 방식의 '전략'만 바꿔섯 두 가지 이상의 방식으로 결제하는 것)
**컨텍스트
: 프로그래밍에서의 컨텍스트는 상황, 맥락, 문맥을 의미.
: 개발자가 어떠한 작업을 완료하는 데 필요한 모든 관련 정보를 말함.
4. 옵저버 패턴(observer pattern)
: 주체가 어떤 객체의 상태 변화를 관찰하다가 상태 변화가 있을 때마다 메서드 등을 통해 옵저버 목록에 있는 옵저버들에게 변화를 알려주는 패턴
(객체, 주체는 분리되어 있을 수도 합체되어 있을 수도 있음)
더보기
**주체 - 객체의 상태 변화를 보고 있는 관찰자
**옵저버 - 객체의 상태 변화에 따라 전달되는 메서드 등을 기반으로 '추가 변화 사항'이 생기는 객체들
: 옵저버 패턴은 주로 이벤트 기반 시스템에 사용하며, 'MVC(Model-View-Controller) 패턴'에도 사용됨.
(Model에서 변경사항이 생기면 Update() 메서드로 옵저버인 View에게 알려주고 이를 기반으로 Controller등이 작동)
'공부' 카테고리의 다른 글
[CS 공부] 디자인 패턴 - MVC패턴, MVP패턴, MVVM패턴 (0) | 2024.03.18 |
---|---|
그래프(Graph) (0) | 2024.02.05 |
[CS공부] 디자인패턴 - 프록시 패턴, 이터레이터 패턴, 노출모듈 패턴 (0) | 2023.12.17 |
상속과 구현의 차이 (0) | 2023.12.10 |
[CS 공부] 디자인 패턴 - 싱글톤 패턴, 팩토리 패턴 (0) | 2023.12.10 |