✔️ 템플릿 메소드 패턴
템플릿 메소드 패턴이란?
- 어떤 작업을 처리하는 일부분을 서브 클래스로 캡슐화해
전체 일을 수행하는 구조는 바꾸지 않으면서 특정 단계에서 수행하는 내역을 바꾸는 패턴 - 즉, 동일한 기능을 상위 클래스에서 정의하면서 확장, 변화가 필요한 부분만 서브 클래스에서 구현하여 사용
- 로직을 단계 별로 나눠야 하는 상황에 적용하며, 단계 별로 나눈 로직들이 앞으로 수정될 가능성이 있을 경우 더 효율적
- 전체적으로 동일하면서 부분적으로는 다른 구문으로 구성된 메서드의 코드 중복을 최소화할 수 있음
- 클래스는 추상으로 만들고 자식들만 활용할 수 있도록 protected 선언을 해야 하며
단계를 진행하는 메소드는 수정이 불가능하도록 final 키워드를 추가해야 함 - 템플릿 메소드 패턴의 UML
- AbstractClass : 템플릿 메서드를 정의하는 클래스
- ConcreteClass : 물려받은 메서드를 구현하는 클래스 (오버라이딩)
'Tech Interview > Design Pattern' 카테고리의 다른 글
[Design Pattern] 옵저버 패턴 (0) | 2024.01.13 |
---|---|
[Design Pattern] 팩토리 메소드 패턴 (0) | 2024.01.12 |
[Design Pattern] 싱글톤 패턴 (0) | 2024.01.12 |
[Design Pattern] 어댑터 패턴 (0) | 2024.01.12 |
[Design Pattern] 디자인 패턴 (0) | 2024.01.11 |