나만 이해하도록 불친절하게 작성되어 있습니다.
자세한 내용은 책을 보세요.
Abstract Factory
- Factory Method와 거의 유사한데 하나의 product에만 초점을 맞춘 것이 아니라 여러 product를 생성하고 이를 조합하는 과정에 초점이 맞춰져 있다.
- Client가 AbstractFactory보고 product A 내놔 B 내놔.. 해서 A계열의 AbstractProduct와 B 계열의 AbstractProduct를 얻어온다음 그걸로 뭔가 최종 제품을 만든다. 그래서 여기서의 AbstractProduct는 제품이라기 보다는 부품이라고 보는 것이 좋다.
- 그리고 이런 일련의 부품들을 제공하는 ConcreteFactory의 선정이 중요한데 그 부분까지 다룬다. 예제에서는 class이름을 command line 입력으로 받아서 ConcreteFactory를 만듦으로써 입력에 따라 전혀 다른 제품이 생성될 수 있도록 했다.
- 새로운 제품군을 위한 공장과 부품 추가는 쉬운 반면, 새로운 부품 유형을 추가하는 것은 어렵다. 즉, product C 추가는 어렵다.
댓글 없음:
댓글 쓰기