🛠AbstractFactory(create)はオブジェクト同士のつながりFactoryMethod(createXXX)はクラス同士のつながり
ファクトリーといえばアンディ・ウォーホル
It wasn't called the Factory for nothing. It was where the assembly line for the silkscreens happened.(ファクトリーは全く意味がないというわけでもなかった。)
ウィンドウシステム 万物がウィンドウから生ずるという発想
〇TKとか〇widgetとか〇WTとかいうものには多かれ少なかれファクトリーが登場。窓から世界へ。DOMの構造も参考になるだろう。
Factoryでは便宜行Baseclassが同じものが生成されることが多い。prototypeとの違いも調べればよい。
Factory MethodのGoFの説明ではDOMが出てくる。
ファクトリ(create)とプロトタイプ(clone)の違い
Wikipediaでの説明はこんな感じ。
AbstractFactoryとFactoryMethodの違い
1)concreteFactoryがCreateProductで様々なProductを作るしくみ(create)をClientに提供するのがAbstractFactory
2)ConcreteCreatorが作るConcreteProductを利用するためにCreatorがConcreateCreaterにプロダクトの生成を移譲する(createXXX)のがFactoryMethod
3)AcstractFactoryが様々なproductを作るしくみをClinetに提供する際にAcstractFactoryがCreatorとしてConcreteCreaterにプロダクトの生成を移譲したらFactoryMethod(createXXX)でAbstractFactory(create)を提供したことになる。
template methodとの違い 骨格のようなものの提示がtemplate method(中身はあったりなかったり) 中身があるのはファクトリ系(create)
いいなと思ったら応援しよう!
お願い致します