差分
このページの2つのバージョン間の差分を表示します。
| 両方とも前のリビジョン前のリビジョン次のリビジョン | 前のリビジョン | ||
| study:java:design_pattern:factory [2008/08/16 05:13] – banana | study:java:design_pattern:factory [2010/10/29 01:37] (現在) – banana | ||
|---|---|---|---|
| 行 14: | 行 14: | ||
| 위에 있는 정의에도 나와 있지만, 다른 개발자들이 " | 위에 있는 정의에도 나와 있지만, 다른 개발자들이 " | ||
| - | {{: | + | {{: |
| + | |||
| + | {{keywords> | ||
| + | |||
| ===== An Example of Factory Method Pattern ===== | ===== An Example of Factory Method Pattern ===== | ||
| - | 팩토리 메소드 패턴의 예로 피자의 주문을 처리하는 피자가게를 팩토리 메소드 패턴을 이용해 구현해 보고자 합니다. | + | 팩토리 메소드 패턴의 예로 피자의 주문을 처리하는 피자가게를 팩토리 메소드 패턴을 이용해 구현해 보고자 합니다.\\ |
| - | 뉴욕풍 피자를 만드는 뉴욕피자가게와 시카고풍 피자를 만드는 시카고피자가게를 만들고자 합니다. PizzaStore에서는 | + | 뉴욕풍 피자를 만드는 뉴욕피자가게와 시카고풍 피자를 만드는 시카고피자가게를 만들고자 합니다. |
| - | 어떤 피자를 만들지는 모릅니다. 어떤 피자를 만들지는 순전히 뉴욕피자가게(NYPizzaStore)와 시카고피자가게(ChicagoPizzaStore)가 결정하게 됩니다. | + | 어떤 피자를 만들지는 모릅니다. 어떤 피자를 만들지는 순전히 뉴욕피자가게(**%%NYPizzaStore%%**)와 시카고피자가게(**%%ChicagoPizzaStore%%**)가 결정하게 됩니다. |
| - | {{: | + | {{: |
| + | |||
| + | |||
| + | |||
| + | ====== the Definition of Abstract Factory Pattern ====== | ||
| + | 팩토리 메소드 패턴의 형제인 추상 팩토리 패턴을 소개합니다. 정의는 다음과 같습니다. | ||
| + | < | ||
| + | 추상 팩토리 패턴 - 추상 팩토리 패턴에서는 인터페이스를 이용하여 서로 연관된, | ||
| + | 또는 의존하는 객체를 구상 클래스를 지정하지 않고도 생성할 수 있습니다. | ||
| + | </ | ||
| + | |||
| + | 추상 팩토리 패턴을 사용하면, | ||
| + | 이때, 실제로 어떤 제품이 생산되는지는 전혀 알 필요도 없습니다. 따라서 클라이언트와 팩토리에서 생산되는 제품을 분리시킬 수 있습니다.\\ 클래스 다이어 그램을 살펴봅시다. | ||
| + | |||
| + | {{: | ||
| + | |||
| + | ===== An Example of Abstract Factory Pattern ===== | ||
| + | 이제 마지막으로 추상 팩토리 패턴을 구현한 예를 살펴봅시다. \\ 위의 클래스 다이어 그램에서 %%Client%%에 해당되는 것이 **%%PizzaStore%%**의 예에서 나온 **%%NYPizzaStore%%**나 **%%ChicagoPizzaStore%%**에 해당됩니다. | ||
| + | {{: | ||