में फैक्टरी पैटर्न बनाम कन्स्ट्रक्टर पैटर्न मैंने जावास्क्रिप्ट में डिज़ाइन पैटर्न के बारे में एक ट्यूटोरियल देखा। हालांकि ट्यूटोरियल अच्छा था, लेकिन मुझे कुछ सवाल के साथ छोड़ दिया।जावास्क्रिप्ट
जैसा कि मैंने देखा कि फैक्टरी और निर्माता एक ही परिणाम उत्पन्न करते हैं। तो उनमें से दोनों के बीच क्या अंतर है? प्रत्येक के लिए उपयोग केस परिदृश्य क्या हैं?
फैक्टरी पैटर्न
function factoryPattern(data) {
var factory = {};
factory.name = data.name;
factory.title = data.title;
factory.startDate = data.startDate;
return factory;
}
var factoryUse = factoryPattern(jsonObj);
निर्माता पैटर्न
function constructorPattern(data) {
this.name = data.name;
this.title = data.title;
this.startDate = data.startDate;
}
var constructorUse = new constructorPattern();
संपादित: @Michael वार्नर ने समझाया। कारखाने की विधि अपरिवर्तनीय वस्तु लौटाती है जिसके निर्माण के बाद उनके निर्माता को कोई लिंक नहीं है।
लेकिन कन्स्ट्रक्टर पटर में वे उनके साथ लिंक करते हैं।
तो व्यावहारिक उपयोग करने के मामले में यह समझने के लिए बेहतर होगा कि कभी-कभी ऑब्जेक्ट रखने के लिए अच्छा क्यों होता है जो उनके कन्स्ट्रक्टर से लिंक होता है।
कारखाने पैटर्न, कैश से पुराने वस्तुओं का उत्पादन कर सकते, तो उदाहरण के लिए यह इनपुट –
@JosephYoung से अपरिवर्तनीय वस्तुओं का निर्माण कर रहा: मैं माफी चाहता हूँ, लेकिन मैं आपको नहीं मिला। क्या आप इसे एक लेमेन टर्म – Carlos