노무현 대통령 배너

Design Pattern

Abstract Factory Pattern 추상 팩토리 패턴을 액션스크립트로 컨버팅 – Head First Design Pattern

by on 5.30, 2009, under Design Pattern

헤드퍼스트 디자인 패턴의 제 4 장의 내용은 팩토리 패턴 입니다. 팩토리 패턴에 관련한 포스트는 아래 세 개의 목록이 계속 연결되는 내용이므로 차례대로 읽어나가면 이해에 도움이 될 수 있을 것 입니다.

  1. Simple Factory 심플 팩토리 : 팩토리 패턴의 워밍업
  2. Factory Method Pattern 팩토리 메서드 패턴을 액션스크립트로 컨버팅
  3. Abstract Factory Pattern 추상 팩토리 패턴을 액션스크립트로 컨버팅 (현재 글)

pizza_factory우선 추상 팩토리 패턴의 정의를 보도록 하죠.

“추상 팩토리 패턴 – 추상 팩토리 패턴에서는 인터페이스를 이용하여 서로 연관된, 또는 의존하는 객체를 구상 클래스를 지정하지 않고도 생성할 수 있습니다.”

앞서 다룬 팩토리 메서드 패턴에서도 하위형으로 NYPizzaStore 구상 객체를 만들고 상위형이자 추상층인 PizzaStore 로 업 캐스팅 하는 부분이 있습니다만,[01] 팩토리 메서드 패턴의 핵심은 그 부분에 있는 것이 아니라, 객체 생성을 서브클래스에 캡슐화 시킨다는 훨씬 중요한 내용에 있습니다.

(계속 읽기…)

  1. 이 부분이 팩토리 메서드와 추상 팩토리의 경계를 모호하게 만드는 것 같습니다. []
3개의 댓글 :, , , , , , , , , , , , , more...

Factory Method Pattern 팩토리 메서드 패턴을 액션스크립트로 컨버팅 – Head First Design Pattern

by on 5.27, 2009, under Design Pattern

nystylepizza헤드퍼스트 디자인 패턴의 제 4 장의 내용은 팩토리 패턴 입니다. 이전 포스트에서 심플 팩토리로 워밍업 했었는데요, 형태 자체는 거의 동일하므로 심플 팩토리를 읽고 이 포스트를 읽는다면 보다 확실한 이해를 할 수 있으리라 생각합니다.

우선 팩토리 메서드 패턴의 정의를 보도록 하죠.

“팩토리 메서드 패턴 – 팩토리 메서드 패턴에서는 객체를 생성하기 위한 인터페이스[01] 를 정의하는데, 어떤 클래스의 인스턴스를 만들지는 서브클래스에서 결정하게 만듭니다. 팩토리 메서드 패턴을 이용하면 클래스의 인스턴스를 만드는 일을 서브클래스에게 맡기는 것이죠.”

피자 프랜차이즈가 분점을 내게 되었습니다. 뉴욕과 시카고는 서울과 대구 양키스와 레드삭스 만큼이나 달라서 피자에 들어가는 재료가 꽤나 다릅니다. 실제로 업무에서도 객체를 생산하는 구조는 동일하지만, 구상 클래스들의 형식이 달라서 그에따른 카테고리를 나눠서 객체를 생성해야 하는때가 빈번하게 생기는데 바로 그런 경우에 팩토리 메서드 패턴을 사용하면 좋을것 같습니다.

(계속 읽기…)

  1. 여기에서의 인터페이스는 interface 키워드를 사용하는 인터페이스를 지칭한다기 보다는 추상메서드도 포함하는 좀더 넓은 의미의 인터페이스를 의미합니다. []
2개의 댓글 :, , , , , , , , , , , , , more...

Simple Factory 심플 팩토리 : 팩토리 패턴의 워밍업 – Head First Design Pattern

by on 5.26, 2009, under Design Pattern

pizza_factory_pattern헤드퍼스트 디자인 패턴 책의 팩토리 패턴(Factory Pattern) 챕터는 70여페이지에 걸쳐 팩토리 패턴의 이름을 가지고 있는 두가지의 패턴을 다루고 있습니다. 팩토리 메서드 패턴과 추상 팩토리 패턴이죠. 그런데 그 전에 팩토리 패턴은 대략 이런것 이라는 식의 워밍업용의 팩토리 패턴을 언급하고 있는데요. 심플 팩토리(Simple Factory) 입니다.

심플 팩토리는 엄밀히 말하면 패턴이라기 보다는 객체지향 프로그래밍을 할때 늘상 사용하게 되는 관용구 같은것이라 패턴으로 취급하지 않는 편입니다. 하지만 뒤에 나올 팩토리 메서드 패턴이나 추상 팩토리 패턴의 기본이 되는 것이라 확실히 짚고 넘어가야 합니다.

심플 팩토리 부분의 코드는 책에 전문이 나와있지 않아 제공되는 자바코드를 직접 컨버팅 하였습니다. 그래서 책의 내용과 약간 다르게 표현된 부분이 있습니다만, 피자는 확실히 주문대로 나옵니다.

(계속 읽기…)

1개의 댓글 :, , , , , , , , , , , , , , more...

Looking for something?

Use the form below to search the site:

Still not finding what you're looking for? Drop a comment on a post or contact us so we can take care of it!

Meta