템플릿 메소드 패턴
상속을 통해 슈퍼클래스의 기능을 확장할 때 사용하는 대표적인 방법이다.
변하지 않는 기능은 슈퍼클래스에 만들어두고 자주 변경되며 확장할 기능은 서브클래스에서 만든다.
팩토리 메소드 패턴
슈퍼클래스에서 서브클래스에서 구현할 메소드를 호출하여 필요한 타입의 오브젝트를 가져와 사용한다.
서브클래스에서 오브젝트 생성 방법과 클래스를 결정할 수 있도록 미리 정의해둔 메소드를 팩토리 메소드라고 하고, 이 방식을 통해 슈퍼클래스의 기본 코드에서 오브젝트 생성방법을 독립시키는 방법을 팩토리 메소드 패턴이라고 한다.
참고서적: 토비의 스프링3

덧글