जब कक्षाएं मॉडलिंग, आरंभ की पसंदीदा तरीका क्या है:कंस्ट्रक्टर्स बनाम फैक्टरी के तरीके
- कंस्ट्रक्टर्स, या
- फैक्टरी के तरीके
और क्या उनमें से या तो उपयोग करने के लिए विचार किया जाएगा ?
कुछ स्थितियों में, मुझे एक फैक्ट्री विधि पसंद है जो ऑब्जेक्ट का निर्माण नहीं किया जा सकता है। यह कोड साफ है। मैं आसानी से जांच सकता हूं कि कन्स्ट्रक्टर से अपवाद फेंकने के विपरीत, वैकल्पिक कार्रवाई करने से पहले लौटाया गया मूल्य शून्य नहीं है। (मुझे व्यक्तिगत रूप से अपवाद पसंद नहीं हैं)
कहें, मेरे पास एक कक्षा पर एक निर्माता है जो आईडी मान की अपेक्षा करता है। कन्स्ट्रक्टर डेटाबेस से वर्ग को पॉप्युलेट करने के लिए इस मान का उपयोग करता है। ऐसे मामले में जहां निर्दिष्ट आईडी के साथ एक रिकॉर्ड मौजूद नहीं है, तो कन्स्ट्रक्टर रिकॉर्ड नॉटफाउंड अपवाद को फेंकता है। इस मामले में मुझे कोशिश करने के लिए सभी तरह के वर्गों के निर्माण को संलग्न करना होगा .. कैच ब्लॉक।
इसके विपरीत मेरे पास उन वर्गों पर एक स्थिर फैक्ट्री विधि हो सकती है जो रिकॉर्ड नहीं मिलने पर शून्य हो जाएंगे।
इस मामले, कन्स्ट्रक्टर या फैक्ट्री विधि में कौन सा दृष्टिकोण बेहतर है?
स्टेटिक फैक्ट्री विधि गोफ डिजाइन पैटर्न - फैक्टरी विधि पैटर्न से अलग है। http://stackoverflow.com/questions/929021/what-are-static-factory-methods-in-java –
कृपया GoF डिज़ाइन पैटर्न के फैक्टरी विधि पैटर्न से तुलना न करें। –
यह मुझे कुछ भी नहीं बताता – Sushant