[디자인 패턴] template Pattern(템플릿 패턴) by python, java

2019. 1. 4. 00:32cs/디자인 패턴

template Pattern


추상 클래스가 있고 이를 상속하여 구체적으로 구현하는 하위클래스가 있습니다. 하위클래스 들이 어떻게 구현되는지에 따라 프로그램이 다르게 실행 될 것입니다. 하지만 템플릿 패턴은 상위 클래스에서 큰 흐름을 제공해주고 하위 클래스에 구체적인 내용을 결정하는 디자인 패턴을 템플릿 패턴이라고 합니다. 


요약 


추상클래스를 통해 프로그램 큰 흐름을 제공해주고 이를 상속하는 클래스들이 구체적으로 구현하는 패턴입니다.  





만약 템플릿 패턴을 구현하지 않고 복사, 붙여넣기를 통해 구현한다면 class1, class2, class3 등등이 만들어 질 것이다. 그럼 oop의 특성상 클래스를 추상화하여 숨기지 못하고 하나의 클래스에서 버그가 발생하면 나머지 클래스도 손을 봐야할 것이다. 


그러므로 이 패턴은 크게는 공통된 로직으로 작동하며 세부적인 내용이 바뀔 때 사용하면 좋을 것이다.