-
[Design Pattern] 템플릿 메서드 패턴(Template Method Pattern)Software Engineering 2020. 6. 8. 11:17728x90
Template Method Pattern
- 행위 패턴 중에 하나
- 전체적인 알고리즘은 상위 클래스에서 구현하면서 다른 부분은 하위 클래스에서 구현할 수 있도록 하는 디자인 패턴
- 전체적인 알고리즘은 동일하면서 부분적으로는 다른 구문으로 구성된 메서드의 코드 중복을 최소화할 때 유용
- 상위 클래스의 메서드를 Template Method라고 부르고 하위 클래스에서 오버라이드될 메서드를 primitive 또는 hook 메서드라고 부름
역할이 수행하는 작업
- 템플릿 메서드를 정의하는 클래스
- 하위 클래스에 공통 알고리즘을 정의하고 하위 클래스에서 구현될 기능을 primitive 혹은 hook 메서드로 정의하는 클래스
AbstractClass
- 상속받은 primitive 혹은 hook 메서드를 구현하는 클래스
- 상위 클래스에 구현된 템플릿 메서드의 일반적인 알고리즘에서 하위 클래스에 적합하게 primitive 혹은 hook 메서드를 오버라이드 하는 클래스
ConcreteClass
728x90'Software Engineering' 카테고리의 다른 글
[Design Pattern] 추상 팩토리 패턴(Abstract Factory Pattern) (0) 2020.06.15 [Design Pattern] 팩토리 메서드 패턴(Factory Method Pattern) (0) 2020.06.09 [Design Pattern] 데커레이터 패턴(Decorator Pattern) (0) 2020.06.07 [Design Pattern] 옵서버 패턴(Observer Pattern) (0) 2020.06.06 [Design Pattern] 커맨드 패턴(Command Pattern) (0) 2020.06.01