자신의 기능 맥락(context)에서,
필요에 따라서 변경이 필요한 알고리즘
이 있을 수 있다. 이를
인터페이스를 통해 통째로 외부로 분리
시키고, 이를
구현한 구체적인 알고리즘 클래스를 필요에 따라 바꿔서 사용
할 수 있게 하는 디자인 패턴이다.
예시)
PaymentService(맥락)에서