템플릿 메소드 패턴이란?

알고리즘의 구조를 변경하지 않고 알고리즘의 특정 단계들을 다시 정의할 수 있게 해주는 패턴

전체적인 내용은 같으나, 부분적으로 수정이 필요할 때 유용하게 사용되는 패턴

장점

같은 템플릿으로 하위 클래스를 생성하기에 추상화에 따른 중복코드를 줄일 수 있다

이에 따라 좀 더 자식 클래스에서 핵심 로직만 관리하기 편해진다

단점

일반적인 상속에 따른 자식 클래스를 구현하기에 자식 클래스가 많아질 수록 클래스 관리가 복잡하게 된다

올바른 추상화를 하지 않을 경우, 오히려 코드를 더 작성해야 한다


마치며…

템플릿 메소드 패턴을 마지막으로 간략하게나마 디자인패턴을 살펴보았다.

유명한 내용이다 보니 다른 글도 찾아보면서 진행하였는데,
글 내용 자체에는 코드 관련 내용을 최대한 적지 않고 메모형식으로 작성했는데

이유는 아직 덜 이해하기도 해서, 나중에 다시 보면서 이해하기 위해 정리하는 개념으로 작성으로 했다.

작성하면서 해본 코드 예시는 디자인패턴 예시 코드 저장소에서 살펴볼 수 있다.


참고