"यदि कोई कर्मचारी अपना काम अच्छी तरह से करना चाहता है, तो उसे पहले अपने औजारों को तेज करना होगा।" - कन्फ्यूशियस, "द एनालेक्ट्स ऑफ कन्फ्यूशियस। लू लिंगगोंग"
मुखपृष्ठ > प्रोग्रामिंग > स्पष्ट रूप से कॉलबैक नर्क से बचना

स्पष्ट रूप से कॉलबैक नर्क से बचना

2024-09-17 को प्रकाशित
ब्राउज़ करें:621

एसिंक्रोनस प्रोग्रामिंग जावास्क्रिप्ट की प्रमुख शक्तियों में से एक है, खासकर Node.js में; हालाँकि, चिंताओं के आवश्यक पृथक्करण के कारण, कई अतुल्यकालिक संचालन अक्सर कॉलबैक के माध्यम से किए जाते हैं, और इससे "कॉलबैक नरक" के रूप में जाना जा सकता है। उदाहरण के लिए, ऐसी स्थिति पर विचार करें जहां हम अपने जावास्क्रिप्ट कोड में नेस्टेड कॉलबैक के साथ काम कर रहे हैं, और आइए देखें कि हम प्रॉमिस और एसिंक/प्रतीक्षा संरचना का उपयोग करके इसे कैसे रिफैक्टर कर सकते हैं।

कॉलबैक हेल: एक उदाहरण

आइए कुछ कोड से शुरुआत करें जो एक सरल उत्पाद प्रबंधन प्रणाली के लिए फ़ाइल संचालन को संभालने के लिए कॉलबैक का उपयोग करता है:

Explicitly Avoiding Callback Hell

यहां, हमारे पास पढ़ने और फ़ाइल में लिखने के लिए कई अच्छी तरह से नेस्टेड बैककॉल हैं। यह संभवतः उन उदाहरणों में से एक है जिसे आप तब लिखेंगे जब आप कॉलबैक नरक के अंदर गहरे होंगे। अंत में, अधिक संख्या में एसिंक्रोनस ऑपरेशंस के साथ कोड बढ़ेगा और इंडेंटेशन की मात्रा बढ़ने से इसे पढ़ना कठिन हो जाएगा। सेव() विधि में, fs.readFile फ़ंक्शन फ़ाइल को पढ़ता है, और फिर इसका कॉलबैक सामग्री को पार्स करता है और फ़ाइल की सामग्री को फिर से लिखने के लिए fs.writeFile फ़ंक्शन का उपयोग करता है जो दूसरे कॉलबैक में किया जाता है। नेस्टिंग के ऐसे स्तर कोड को "कयामत के पिरामिड" के समान बनाते हैं।

वादों और Async/प्रतीक्षा की ओर बढ़ना

इस कॉलबैक नरक से बचने के लिए, जावास्क्रिप्ट वादे और एसिंक/प्रतीक्षा सिंटैक्स हैं जो कोड को अधिक पठनीय, प्रबंधनीय और डिबगिंग-अनुकूल बनाते हैं।
यहाँ उन्नत संस्करण है:

Explicitly Avoiding Callback Hell

वादे और Async/प्रतीक्षा क्यों?

वादे रैखिक रूप से और कम से कम नेस्टेड संरचनाओं के साथ अतुल्यकालिक संचालन के प्रबंधन को सक्षम करके सहायक होते हैं। एसिंक/प्रतीक्षा पैटर्न कोड की पठनीयता को बढ़ाता है और एसिंक्रोनस ऑपरेशंस को इस तरह से संबोधित करता है जो सिंक्रोनस ऑपरेशंस के करीब दिखता है। विशेष रूप से प्रयास और पकड़ने वाले ब्लॉकों का उपयोग करने से, त्रुटि प्रसंस्करण अधिक पारदर्शी और समझने में आसान हो जाता है जो कोड रखरखाव में योगदान देता है।

निष्कर्ष

जावास्क्रिप्ट में, विशेष रूप से Node.js में, साफ-सुथरे तरीके से कोड लिखते समय कॉलबैक नरक वास्तविक समस्या हो सकती है। प्रॉमिस और एसिंक/वेट की मदद से, भारी नेस्टेड कॉलबैक हेल को एक ही समय में स्वच्छ रैखिक कोड में बदलना संभव है, जिससे त्रुटियों से निपटना आसान हो जाता है। यह न केवल आपके कोड को बेहतर दिखने के लिए बदलता है बल्कि आपको एक बेहतर जावास्क्रिप्ट प्रोग्रामर बनने के सही रास्ते पर भी स्थापित करता है।

विज्ञप्ति वक्तव्य यह आलेख यहां पुन: प्रस्तुत किया गया है: https://dev.to/syriamme/explicitly-avoiding-callback-hell-h95?1 यदि कोई उल्लंघन है, तो कृपया इसे हटाने के लिए [email protected] से संपर्क करें।
नवीनतम ट्यूटोरियल अधिक>

चीनी भाषा का अध्ययन करें

अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।

Copyright© 2022 湘ICP备2022001581号-3