템플릿 패턴(Template Pattern)
템플릿 패턴은 상위 클래스에서는 실제 구현부가 아닌 추상 메서드만 구현하고 하위 클래스에서 실제 기능을 구현한다.
하위 클래스에 따라서 실제 기능이 달라지기 때문에 재사용성 및 독립성이 보장이 된다.
추상화 클래스로 Unit에서 Move만 정의하고 Unit을 상속받은 Air Unit과 Land Unit에서 실제 해당 기능의 구현을 구현한다. Air Unit의 Move는 하늘을 이동하는 기능을 구현하고 Land Unit에서는 땅에서 이동을 하는 기능을 구현한다.
이렇게 정의만 하고 기능 구현을 하위 클래스에서 작성을 하고 실제 메서드를 호출은 Move를 하면 된다.
템플릿 패턴을 사용하게 되면 로직을 공통화할 수 있고, 상위 클래스와 하위 클래스의 연계가 가능하다.
★★☆☆☆
반응형
'개발 > 기본) 디자인패턴' 카테고리의 다른 글
디자인패턴) 프로토타입 패턴(ProtoType Pattern) (6) | 2020.04.05 |
---|---|
디자인패턴) 싱글톤 (Singleton Pattern) (0) | 2020.04.04 |
디자인패턴) 어뎁터 패턴(Adapter Pattern) (0) | 2020.04.02 |
디자인패턴) 이터레이터 패턴( Iterator Pattern) (0) | 2020.03.31 |
디자인패턴) 팩토리 패턴(Factory Pattern) (4) | 2020.03.18 |
댓글