मैं पैकेज के दायरे के विचार को समझता हूं, और कभी-कभी यह भी सोचा है कि मैं यह चाहता था। हालांकि, हर बार जब मैंने इसका उपयोग करने की कोशिश करने के लिए एक गंभीर इरादे के साथ सेट किया, तो मुझे पता चला कि यह उन आवश्यकताओं के अनुरूप नहीं है जिन्हें मैंने सोचा था कि यह सेवा करेगा।
मेरा मुख्य मुद्दा हमेशा ऐसा लगता है कि जिन चीज़ों के दायरे को सीमित करना चाहते हैं, वे कभी भी एक ही पैकेज में नहीं हैं। वे वैचारिक रूप से सभी से जुड़े हो सकते हैं, लेकिन अनुप्रयोग के भीतर डेटा के तार्किक विभाजन ने उन्हें बड़े पैकेज के अलग-अलग चाइल्ड पैकेज के रूप में रखा है।
उदाहरण के लिए मेरे पास एक मिशन मॉडल हो सकता है और मुझे कुछ तरीकों का उपयोग करने के लिए मेरे मिशनसर्विस की तरह केवल अन्य मिशन उपकरण चाहिए। हालाँकि, मैं अपने पैकेज के रूप में Missions.models और Missions.services के साथ अंत करता हूं, इसलिए मिशनमॉडल और मिशन सेवा एक ही पैकेज गुंजाइश नहीं हैं। ऐसा कभी नहीं लगता कि कोई ऐसी स्थिति है जहाँ पैकेज उचित रूप से उन चीज़ों को सम्मिलित करते हैं जिन्हें मैं बिना अनुमति के बढ़ाना चाहता हूँ, जिसमें कई चीज़ें शामिल हैं जिन्हें मैं उन अनुमतियों के लिए नहीं चाहता; और शायद ही कभी मुझे लगता है कि पैकेज स्कूपिंग का फायदा एक विधि को एक ही पैकेज में सब कुछ रखने के लिए मेरी परियोजना वास्तुकला को संशोधित करने के लिए उचित है। अक्सर या तो पहलू या किसी प्रकार का नियंत्रण उलटा हो जाता है जो भी समस्या के लिए बेहतर तरीका होता है, जिसके लिए मैं पैकेज को संक्षेप में समझता हूं।
मैं उत्सुक हूं, क्योंकि यह आमतौर पर सभी जावा डेवलपर्स में सच माना जाता है, या मैं जो काम करता हूं, उसका सिर्फ एक संकेत है। क्या पैकेज की गुंजाइश वास्तविक दुनिया में बहुत उपयोग की जाती है? क्या ऐसे कई मामले हैं, जहां इसका उपयोग करने के लिए अच्छा रूप माना जाता है, या यह आधुनिक विकास में शायद ही कभी शोषण के लिए एक विरासत व्यवहार के रूप में देखा जाता है?
मैं इस बारे में कुछ नहीं पूछ रहा हूं कि पैकेज का निजी दायरा डिफ़ॉल्ट क्यों है, मैं यह पूछ रहा हूं कि इसका उपयोग चूक के बावजूद कैसे किया जाना चाहिए। अधिकांश के रूप में चर्चा क्यों यह डिफ़ॉल्ट है वास्तव में नहीं मिलता है जब पैकेज गुंजाइश वास्तव में उपयोगी है, इसके बजाय केवल दो अन्य आमतौर पर उपयोग किए जाने वाले स्कोप को डिफ़ॉल्ट करने के लिए बहस नहीं करनी चाहिए ताकि पैकेज उन्मूलन की प्रक्रिया से जीत जाए। इसके अलावा, मेरा सवाल विकास की वर्तमान स्थिति के बारे में है। विशेष रूप से, क्या हम उस बिंदु पर विकसित हुए हैं जहां अन्य उपकरण और प्रतिमान पैकेज के दायरे को कम उपयोगी बनाते हैं, तब यह वापस आ गया था जब इसे डिफ़ॉल्ट बनाने का निर्णय लिया गया था।