Elm:
एरर्स को हैंडल करना
कैसे करें:
Elm का मूल दर्शन है कोई रनटाइम अपवाद नहीं। इसलिए, Elm अपनी प्रकार (type) प्रणाली का उपयोग करता है, जैसे Maybe
और Result
प्रकारों के साथ, एरर्स को हैंडल करने के लिए।
Maybe
परिदृश्य के लिए:
safeDivide : Float -> Float -> Maybe Float
safeDivide numerator denominator =
if denominator == 0 then
Nothing
else
Just (numerator / denominator)
-- जब आप इसे चलाएंगे:
safeDivide 10 2
--> Just 5
safeDivide 10 0
--> Nothing
Result
परिदृश्य के लिए:
type Error = DivisionByZero
safeDivide : Float -> Float -> Result Error Float
safeDivide numerator denominator =
if denominator == 0 then
Err DivisionByZero
else
Ok (numerator / denominator)
-- और इसका उपयोग करते हुए:
safeDivide 10 2
--> Ok 5
safeDivide 10 0
--> Err DivisionByZero
गहन अध्ययन
Elm की प्रकार प्रणाली सख्त होती है, जो समय से पहले एरर्स को पकड़ने में मदद करती है। ऐतिहासिक रूप से, अधिकांश भाषाओं ने अपवादों और रनटाइम चेक्स पर निर्भर किया था, परन्तु Elm ने संकलन-समय की गारंटियों का चयन किया। Result
जैसे विकल्प विस्तृत एरर जानकारी देते हैं, जबकि Maybe
हां-नहीं के परिदृश्यों के लिए सरल है। Elm की एरर हैंडलिंग प्रोग्रामर्स को सभी रास्तों पर पहले से विचार करने के लिए प्रोत्साहित करती है, भूले हुए एरर केसेस की पिटफॉल्स से बचने के लिए।
और देखें:
- Elm की आधिकारिक गाइड का अनुभाग एरर हैंडलिंग पर: एरर हैंडलिंग – एक परिचय
- Elm
Maybe
प्रलेखन: Elm – Maybe - Elm
Result
प्रलेखन: Elm – Result