본문 바로가기

프로그래밍 강의 메모/코딩으로 학습하는 GoF의 디자인 패턴_백기선

행동 관련 디자인 패턴 > 템플릿 콜백 패턴(Template Callback Pattern)

https://inf.run/6Shr

 

코딩으로 학습하는 GoF의 디자인 패턴 - 인프런 | 강의

디자인 패턴을 알고 있다면 스프링 뿐 아니라 여러 다양한 기술 및 프로그래밍 언어도 보다 쉽게 학습할 수 있습니다. 또한, 보다 유연하고 재사용성이 뛰어난 객체 지향 소프트웨어를 개발할

www.inflearn.com

 

 

템플릿 콜백 패턴

  • 콜백으로 상속 대신 위임을 사용하는 템플릿 패턴.
  • 상속 대신 익명 내부 클래스 또는 람다 표현식을 활용할 수 있다.

 

 

 

상속을 사용하지 않고 Callback이라는 인터페이스를 사용한다.

 

Callback이라는 인터페이스가 Strategy Pattern처럼 전략을 제공해준다.

 

계산을 담당하는 로직을 담고있는 메서드 하나를 Callback이라는 인터페이스에 넣어놓는다.

 

전략 패턴과 다른 점은 전략 패턴 같은 경우 여러 개의 메서드를 가질 수 있다.

 

Callback 같은 경우 무조건 하나의 메서드만 담고 있어야 한다.

 

템플릿 콜백 패턴에서 만약에 우리가 오퍼레이션이 여러 개 필요한 경우 인터페이스를 여러 개 만들어야 한다.

 

이렇게 Callback을 만들면 좋은 점은 상속을 사용하지 않아도 된다는 점이다.

 

전략 패턴과 마찬가지로 위임을 사용할 수 있고 람다식을 활용하여 코드가 간결해질 수 있다.