느낌 상으로는 Template Method 패턴의 확장팩 버전 같다. 인스턴스 생성할 클래스(Product)와 생성시켜주는 클래스(Factory)의 형태를 미리 정의(abstract)해놓고 하위 클래스에서 둘 다 구현시켜줌. 이 때, Template Method 패턴과 동일하게 생성되는 과정(예: 각종 옵션 값에 따라서 생성되는 인스턴스를 달리해주고 생성된 인스턴스 고유번호를 어디에 저장하고 등등..)은 클래스(Factory)에서 구현되어 있음. 다시 간단하게 설명하면 제품과 공장 및 제품 생성 구조(뼈대)는 이미 구성되어 있고 나머지는 하위 클래스에서 모두 구현한다고 보면 된다. // 제품 frame public abstract class Product { public abstract void prin..