본문 바로가기

CS/디자인 패턴

전략 패턴

전략 패턴은 정책 패턴이라고도 하며, 객체의 행위를 바꾸고 싶은 경우 '직접' 수정하지 않고 전략이라고 부르는 '캡슐화한 알고리즘'을 컨텍스트 안에서 바꿔주면서 상호 교체가 가능하게 만드는 패턴

 

- 예를 들어

Cart.pay(card)가 있다면 card를 상속 받은 kakaocard, tosscard가 있다면, Cart.pay(new kakaocard(이름, 카드번호, 유효일), Cart.pay(new tosscard(이메일, 카드번호)로 다른 전략으로 가능하다.

즉, Cart라는 Context안에서 캡슐화한 알고리즘(card를 상속받은 애들)을 서로 바꿔주는 전략 패턴이된다.

 

- 전략 패턴을 이용한 라이브러리로는 passport가 있다.

 

 

출처 : 면접을 위한 CS 전공지식 노트

'CS > 디자인 패턴' 카테고리의 다른 글

프록시 패턴  (0) 2022.07.22
옵저버 패턴  (0) 2022.07.22
이터레이터 패턴  (0) 2022.07.22
팩토리 패턴  (0) 2022.07.22
의존성주입(Dependency Injection)  (0) 2022.07.22