क्या रूबी लाइब्रेरी (मणि) या रूबी ऑन रेल्स एप्लिकेशन में कस्टम त्रुटि प्रकारों को परिभाषित करने के लिए सबसे अच्छा अभ्यास है? विशेष रूप से:
- वे परियोजना में संरचनात्मक रूप से कहां हैं? एक अलग फ़ाइल, प्रासंगिक मॉड्यूल / वर्ग परिभाषा के साथ, कहीं और?
- वहाँ किसी भी सम्मेलनों जब स्थापित है कि कर रहे हैं करने के लिए और जब नहीं एक नया त्रुटि प्रकार बनाने के?
विभिन्न पुस्तकालयों में चीजों को करने के विभिन्न तरीके हैं, और मैंने किसी भी वास्तविक पैटर्न पर ध्यान नहीं दिया है। कुछ पुस्तकालय हमेशा कस्टम त्रुटि प्रकारों का उपयोग करते हैं जबकि अन्य उनका उपयोग नहीं करते हैं; कुछ में सभी त्रुटियां हैं, जबकि StandardError का विस्तार अन्य लोगों ने पदानुक्रम में किया है; कुछ सिर्फ खाली वर्ग की परिभाषाएँ हैं, दूसरों में हर तरह की चतुराई है।
ओह, और सिर्फ इसलिए कि मुझे ऐसा लगता है कि इन "त्रुटि प्रकारों" को कॉल करना अस्पष्ट है, मेरे कहने का मतलब यह है:
class AuthenticationError < StandardError; end
class InvalidUsername < AuthenticationError; end
httparty
: github.com/jnunemaker/httparty/blob/…