Ruby:
एरर्स को हैंडल करना

कैसे करें:

Ruby में begin, rescue, ensure, और end का उपयोग करके एरर्स को हैंडल किया जाता है। आप जोखिम भरे कोड को begin और end के बीच में लपेटते हैं। यदि कोई एरर होता है, तब rescue काम करता है।

begin
  # जोखिम भरा कोड यहाँ जाएगा।
  puts 10 / 0
rescue ZeroDivisionError => e
  puts "उफ़! आप ऐसा नहीं कर सकते: #{e.message}"
ensure
  puts "यह हमेशा चलेगा, चाहे एरर हो या ना हो।"
end

नमूना आउटपुट:

उफ़! आप ऐसा नहीं कर सकते: divided by 0
यह हमेशा चलेगा, चाहे एरर हो या ना हो।

गहन अध्ययन

ऐतिहासिक रूप से, प्रोग्रामिंग भाषाओं में एरर हैंडलिंग काफी विकसित हुई है, जहाँ पहले की भाषाओं में अक्सर साधारण या गैर-मौजूद तंत्र होते थे। Ruby की एक्‍सेप्शन हैंडलिंग Python और Smalltalk जैसी भाषाओं से प्रेरित है।

Ruby में begin-rescue के विकल्पों में विधि परिभाषाओं में rescue का उपयोग या गैर-मानक फ्लो कंट्रोल के लिए throw और catch का उपयोग करना शामिल है, हालांकि उनका उपयोग सामान्य एरर हैंडलिंग के लिए नहीं किया जाता है।

एक दिलचस्प विवरण: Ruby में अपवाद (एक्सेप्शन) ऑब्जेक्ट होते हैं (Exception क्लास और उसके वंशजों के उदाहरण), इसलिए आप कस्टम एरर क्लासेस को परिभाषित कर सकते हैं और सिर्फ एरर्स को लॉग करने से ज्यादा कर सकते हैं - आप प्रोग्राम के चारों ओर समृद्ध स्थिति ले जा सकते हैं, जो और अधिक मजबूत एरर हैंडलिंग के लिए है।

देखें भी

  • अपवादों और एरर हैंडलिंग पर Ruby दस्तावेज़: ruby-doc.org
  • Ruby एरर हैंडलिंग की बेहतरीन प्रैक्टिसेज पर विस्तारित गाइड: thoughtbot.com