एब्सट्रैक्ट फैक्ट्री चार के गैंग द्वारा प्रकाशित एक रचनात्मक डिजाइन पैटर्न है। इसका आशय यह है, "अपने ठोस वर्गों को निर्दिष्ट किए बिना संबंधित या आश्रित वस्तुओं के परिवारों को बनाने के लिए एक इंटरफ़ेस प्रदान करें।" (पृष्ठ 87) ध्यान दें कि [फैक्टरी-विधि] एक अलग GOF पैटर्न है, और GoF के बाहर अतिरिक्त [factory] पैटर्न हैं।

एब्सट्रैक्ट फैक्ट्री पैटर्न संबंधित वस्तुओं के समूह में एक थीम लागू करता है। GoF पुस्तकसे विहित उदाहरण जीयूआई विगेट्स के एक समूह में लागू किया गया एक लुक-एंड-फील मानक है। यह पांच प्रतिभागियों द्वारा कार्यान्वित किया जाता है। (पेज 89)

  • AbstractFactory (जैसे विजेट) - संचालन के लिए एक इंटरफ़ेस घोषित करता है जो {{X}} ऑब्जेक्ट्स बनाता है।
  • SolidFactory (उदा। MotifWidgetFactory, PMWidgetFactory) - ConcreteProduct ऑब्जेक्ट बनाने के लिए संचालन को कार्यान्वित करता है।
  • AbstractProduct (जैसे विंडो, स्क्रॉलबार) - एक प्रकार की उत्पाद वस्तु के लिए एक इंटरफ़ेस घोषित करता है।
  • कंक्रीटप्रोडक्ट (उदा। मोतीविंडो, मोटिफ्सक्रॉबर) - संगत ConcreteFactory द्वारा बनाई जाने वाली उत्पाद वस्तु को परिभाषित करता है और AbstractProduct इंटरफ़ेस
  • को लागू करता है।
  • क्लाइंट - AbstractFactory और AbstractProduct कक्षाओं द्वारा घोषित केवल इंटरफेस का उपयोग करता है।

गैंग ऑफ़ फोरएब्सट्रैक्ट फ़ैक्टरी पैटर्न को लागू करने के लिए निम्नलिखित मानदंड प्रदान करते हैं। (पेज 88)

जब सार फैक्टरी पैटर्न का उपयोग करें

  • एक प्रणाली इस बात से स्वतंत्र होनी चाहिए कि उसके उत्पादों को कैसे बनाया जाए, उनकी रचना की जाए और उनका प्रतिनिधित्व किया जाए।
  • एक प्रणाली को उत्पादों के कई परिवारों में से एक के साथ कॉन्फ़िगर किया जाना चाहिए।
  • संबंधित उत्पाद वस्तुओं के एक परिवार को एक साथ उपयोग करने के लिए डिज़ाइन किया गया है, और आपको इस बाधा को लागू करने की आवश्यकता है।
  • आप उत्पादों का एक वर्ग पुस्तकालय प्रदान करना चाहते हैं, और आप केवल उनके इंटरफेस को प्रकट करना चाहते हैं, न कि उनके कार्यान्वयन को।

पैटर्न के निम्नलिखित परिणाम हैं। (पेज 89)

  • यह ठोस कक्षाओं को अलग करता है।
  • यह उत्पाद परिवारों का आदान-प्रदान आसान बनाता है।
  • यह उत्पादों के बीच निरंतरता को बढ़ावा देता है।
  • नए प्रकार के उत्पादों का समर्थन करना मुश्किल है।

GOF पुस्तक के लंबे सारांश के लिए सार फैक्टरीदेखें।

गैंग ऑफ़ फोर ने दो अलग-अलग फ़ैक्टरी पैटर्न प्रकाशित किए, जिनमें से अन्य factory-methodहैं। इसके अतिरिक्त, GOF पुस्तक के बाहर कारखाने के पैटर्न हैं, इसलिए शब्द "कारखाना" अपने आप में अस्पष्ट है।