कई Builder Pattern
उदाहरण Builder
वस्तु का एक आंतरिक वर्ग बनाते हैं जो इसे बनाता है।
यह कुछ समझ में आता है क्योंकि यह इंगित करता है कि क्या Builder
बनाता है। हालाँकि, एक वैधानिक रूप से टाइप की गई भाषा में हम जानते हैं कि क्या Builder
बनता है।
दूसरी ओर यदि Builder
कोई आंतरिक वर्ग है, तो आपको पता होना चाहिए कि किस वर्ग का Builder
निर्माण बिना अंदर देखे हुए होता है Builder
।
इसके अलावा, एक आंतरिक वर्ग के रूप में बिल्डर होने से आयात की संख्या कम हो जाती है क्योंकि इसे बाहरी वर्ग द्वारा संदर्भित किया जा सकता है - यदि आप इस बारे में परवाह करते हैं।
और फिर ऐसे व्यावहारिक उदाहरण हैं जहां Builder
एक ही पैकेज में है, लेकिन एक आंतरिक वर्ग नहीं है, जैसे StringBuilder
। आप जानते हैं कि निर्माण Builder
करना चाहिएString
क्योंकि इसे नाम दिया गया है।
यह कहा जा रहा है, Builder
एक आंतरिक वर्ग बनाने के लिए केवल एक ही अच्छा कारण है जिसके बारे में मैं सोच सकता हूं कि आप जानते हैं कि वर्ग ' Builder
का नाम जाने बिना या नामकरण परंपराओं पर निर्भर है। उदाहरण के लिए, अगर मैं StringBuilder
भीतर का वर्ग String
होता तो शायद मुझे पता होता कि मैं (सट्टा) की तुलना में जल्द ही मौजूद हूं।
क्या Builder
आंतरिक वर्ग बनाने के लिए कोई अन्य कारण हैं या यह सिर्फ वरीयता और अनुष्ठान के लिए नीचे आता है?