2009-06-17 2 views
0

ConcreteCreator에서 ConcreteProduct 로의 부러진 화살표가 무슨 뜻인지 알지 못합니다. 나는 인터넷에서 수색하고 "의존성"을 생각해 내었다. 누군가 평신도의 용어에 의존하는 것을 설명 할 수 있습니까? 감사!UML : 누군가 나를 위해 Factory Method 다이어그램을 설명 할 수 있습니까?

alt text http://www.dofactory.com/Patterns/Diagrams/factory.gif

이미지 http://www.dofactory.com/Patterns/PatternFactory.aspx

답변

3

점선은 ConcreteCreator (종속 또는 클라이언트 요소)와 ConcreteProduct (독립 또는 공급 업체 요소) 간의 종속 관계를 나타냅니다.

이 특정 경우, 선은 ConcreteCreator가 ConcreteProduct의 인스턴스를 작성하는 것을 나타냅니다. 의존성에 '생성'스테레오 타입을 붙임으로써 더 명확 해졌습니다.

+0

그래, 그 이유는 내가 패턴 다이어그램에 혼란 스러워요. <> 스테레오 타입이 있어야합니다. 다이어그램은 나와 같은 초보자가 이해할 수 없습니다. – jerbersoft

1

나는 그것이 ConcreteCreator가 ConcreteProduct 그것을 만드는 것입니다 무엇인지한다는 것을 의미한다 생각에서 잡고, 그래서 거기에 명시적인 의존성이있다. 팩토리 메소드는 Product를 생성하지만, 그 메소드의 ConcreteCreator 오버라이드는 ConcreteProduct를 리턴해야한다.

0

이것은 단지 공장 방식이 아닙니다. 이는 추상 공장 패턴과 비슷합니다. 구체적으로 파생 된 Creator 클래스는 파생 된 Product 클래스의 해당 인스턴스를 만듭니다.

+0

위의 링크를 클릭하면 "Factory Method"패턴을 가리키고 다이어그램을 봅니다. – jerbersoft

+0

GHJV의 p108에있는 "공장 방법"도표의 직접적인 사본입니다 –

2

점선/빈 화살표 머리는 종속성을 나타내며 ConcreteCreator가 어떤 식 으로든 ConcreteProduct를 "사용"한다는 것을 의미합니다. 화살표 자체는 종속성의 본질을 정의하지 않으며 의존성이 존재하고 ConcreteProduct가 실제로 ConcreteCreator의 구성원이 아니라는 것을 정의합니다.

제공된 노트 (즉, "return new ConcreteProduct")는 ConcreteCreator가 ConcreteProduct 유형의 객체를 인스턴스화 (또는 생성)한다는 것을 의미합니다. 이는 공장에서 자연 스럽습니다. 전통적으로 UML에서는 점선 화살표 위에 "< <가 작성되고 > >"이라고 쓰면이 관계를 명확히 할 수 있습니다. UML은이 노트를 스테레오 타입이라고 부릅니다.

자세한 내용은 Allen Holub's UML Quick Reference을 참조하십시오. 그는 "사용자"가 "자원"을 만드는 매우 유사한 예를 볼 수 있습니다.

관련 문제