मैंने ब्लॉग पोस्ट JRuby Performance: Exceptions are not flow control पढ़ा जो असाधारण परिस्थितियों को छोड़कर अपवादों का उपयोग करने से बचने की वकालत करता था।रूबी के लिए लोडररर को बचाने के विकल्प हैं?
मुझे एहसास हुआ कि मैं नियमित आधार पर लोडर्रॉर्स को संभालने के लिए बचाव का उपयोग करने का दोषी हूं।
क्या require
का कोई विकल्प है जो फ़ाइल मौजूद होने पर फ़ाइल लोड करने का प्रयास करता है, लेकिन अगर ऐसा नहीं होता है तो अपवाद नहीं फेंकता है?
पृष्ठभूमि: आप सोच रहे हैं कि "तुम क्यों मिल गया है की आवश्यकता है कि आप पूरी तरह की आवश्यकता नहीं है?", यहाँ मेरी कहानी है:
- जब मैं रूबी 1.8 के लिए प्रोग्रामिंग था, मैं
require "rdoc/usage"
इस्तेमाल किया ताकि अगर मैं अपने कमांड लाइन एप्लिकेशन में पैरामीटर की सही संख्या में प्रवेश नहीं करता तो मैं उपयोग जानकारी दे सकता हूं। यह आउट ऑफ़ द बॉक्स 1.9 पर एक अपवाद फेंकता है। - मेरे एप्लिकेशन के हिस्से में Win32ole में हेरफेर करने के लिए कोड शामिल है जब यह मेरे विंडोज डेस्कटॉप पर चल रहा है। इससे लोडरर का कारण बनता है यदि शामिल फाइलें लिनक्स सर्वर के तहत चलती हैं जो भारी कम्प्यूटेशनल काम करता है। Win32ole का उपयोग करने वाली फ़ाइलों में अन्य कोड भी है जो मेरे टेस्ट सूट में परीक्षण किया जाता है, इसलिए लिनक्स के तहत मेरा टेस्ट सूट चलाते समय, मुझे उन फ़ाइलों की आवश्यकता होती है। मुझे ऐसी फाइलों को विभाजित करना चाहिए, लेकिन यह यक शेविंग की तरह थोड़ा लगता है।
मेरे पास एक बहुत ही समान उपयोग-मामला है (अर्थात्: एक उपकरण में वैकल्पिक एक्सटेंशन)। मुझे यह जानकर उत्सुकता होगी कि क्या लोडरर ऐसा करने का एकमात्र तरीका है। –
ध्यान दें कि लेख एक ऐसे मामले के बारे में बात कर रहा है जहां * प्रत्येक एकल * रेल अनुरोध के लिए कई सौ * अपवाद उठाए गए थे, जबकि आप कार्यक्रम के पूरे जीवनकाल के दौरान * दो * अपवाद * एक बार * बढ़ाने के बारे में बात कर रहे हैं। –