निर्भरताएँ प्रभावी कोड पुन: उपयोग को संभव बनाती हैं। सुनिश्चित करें कि आप जानते हैं कि उन्हें अपने नोड प्रोजेक्ट्स में कैसे प्रबंधित किया जाए।

एक निर्भरता कोड का एक टुकड़ा है - एक पुस्तकालय, एक मॉड्यूल या एक पैकेज - जिसे एक परियोजना को ठीक से काम करने की आवश्यकता होती है।

Node.js में, डिपेंडेंसी और डिपेंडेंसी पैकेज की श्रेणियां हैं जिन्हें आप अपने पैकेज.जॉन फ़ाइल में परिभाषित कर सकते हैं ताकि आपके प्रोजेक्ट की निर्भरता को प्रबंधित किया जा सके। उनके अंतरों का अन्वेषण करें और जानें कि उन्हें अपनी परियोजनाओं में कैसे उपयोग किया जाए।

एनपीएम परियोजना में नियमित निर्भरता

नियमित निर्भरता-या, बस, निर्भरता-वे पैकेज हैं जिन्हें आपके एप्लिकेशन को रनटाइम और उत्पादन वातावरण में काम करने की आवश्यकता होती है।

निर्भरताओं में शामिल हो सकते हैं:

  • बाहरी पुस्तकालय जो पूर्व-निर्मित कार्यक्षमता प्रदान करते हैं, जैसे लॉश।
  • फ्रेमवर्क जो अनुप्रयोगों के निर्माण के लिए नींव या संरचना प्रदान करते हैं, जैसे एक्सप्रेस या रिएक्ट।
  • डेटाबेस ड्राइवर्स, जैसे MongoDB या sqlite3.
  • पैकेज जो नेटवर्क से संबंधित कार्यों में सहायता करते हैं, जैसे एक्सियोस या सॉकेट.आईओ।
instagram viewer

उदाहरण के लिए, यदि आप एक एक्सप्रेस.जेएस के साथ सीआरयूडी एपीआई, अभिव्यक्त करना आपकी निर्भरताओं में से एक होगी क्योंकि आपके सर्वर को कार्य करने के लिए इसकी आवश्यकता है।

रनटाइम निर्भरताओं को स्थापित करने के लिए, आप पैकेज मैनेजर जैसे उपयोग कर सकते हैं npm, नोड पैकेज मैनेजर, या यार्न।

पैकेज.जॉन फ़ाइल में डिपेंडेंसी ऑब्जेक्ट के तहत डिपेंडेंसी मौजूद होती है। निर्भरता ऑब्जेक्ट संकुल के नाम और संस्करणों को संग्रहीत करता है।

एनपीएम का उपयोग कर एक निर्भरता के रूप में एक पैकेज स्थापित करने के लिए, नीचे दी गई कमांड चलाएँ:

एनपीएम इंस्टॉल करें 

उपरोक्त आदेश पैकेज को स्थापित करता है और इसे आपके प्रोजेक्ट की निर्भरता के रूप में पंजीकृत करता है पैकेज.जेसन:

// पैकेज.जेसन

"निर्भरता": {
"पैकेज का नाम": "^पैकेज-संस्करण",
}

जब आप किसी वेब-आधारित रिपॉजिटरी से किसी प्रोजेक्ट को क्लोन करते हैं, तो आप नीचे दी गई कमांड चलाकर निर्भरताएँ स्थापित कर सकते हैं:

एनपीएम इंस्टॉल करें

जब आप ऊपर कमांड चलाते हैं, तो आपका पैकेज मैनेजर इसे पढ़ता है पैकेज.जेसन फ़ाइल और पैकेज रजिस्ट्री से निर्दिष्ट निर्भरताएँ और निर्भरताएँ स्थापित करता है।

विकास निर्भरताएँ और उनका उपयोग कैसे करें

विकास निर्भरता—या devDepenendencies—ऐसे पैकेज हैं जिनकी आपके एप्लिकेशन को केवल विकास प्रक्रिया के दौरान आवश्यकता होती है। दूसरे शब्दों में, उत्पादन में उनकी आवश्यकता नहीं है।

निर्भरता में शामिल हो सकते हैं:

  • परीक्षण ढांचे, जैसे जेस्ट या मोचा।
  • टेस्ट रनर, जैसे चाय।
  • लिंटर और फॉर्मेटर्स, जैसे एस्लिंट।
  • प्रलेखन उपकरण, जैसे कि स्वैगर।

एक devDepenedency का एक सामान्य उदाहरण है नोडमॉन पैकेज, जो आपकी स्क्रिप्ट में परिवर्तनों का पता लगाने पर आपके सर्वर को पुनरारंभ करता है।

आप के तहत निर्भरता को परिभाषित कर सकते हैं निर्भरता ए में वस्तु पैकेज.जेसन फ़ाइल। यह ऑब्जेक्ट संकुल के नाम और संस्करणों को संग्रहीत करता है।

आप इस आदेश को चलाकर एक पैकेज को devDependency के रूप में स्थापित कर सकते हैं:

एनपीएम इंस्टॉल करें  --सेव-देव

वैकल्पिक रूप से, आप इस आदेश को चलाकर एक पैकेज को एक निर्भरता के रूप में स्थापित कर सकते हैं:

एनपीएम इंस्टॉल -डी 

ऊपर दिया गया कमांड आपके पैकेज को इंस्टॉल और रजिस्टर करता है पैकेज.जेसन फ़ाइल, जैसे:

// पैकेज.जेसन
"निर्भरता": {
"पैकेज का नाम": "^पैकेज-संस्करण"
}

जब आप किसी वेब-आधारित रिपॉजिटरी से किसी प्रोजेक्ट को क्लोन करते हैं, तो एनपीएम इंस्टॉल करें कमांड देव-निर्भरता भी स्थापित करेगा।

हालाँकि, कमांड के साथ चल रहा है उत्पादन ध्वज केवल निर्भरताओं को स्थापित करता है।

उदाहरण के लिए:

एनपीएम इंस्टॉल --प्रोडक्शन

जब आप ऊपर कमांड चलाते हैं, तो आपका पैकेज मैनेजर इसे पढ़ता है पैकेज.जेसन फ़ाइल और पैकेज रजिस्ट्री से आपके एप्लिकेशन की निर्भरता को स्थापित करता है।

वैकल्पिक रूप से, आप सेट कर सकते हैं NODE_ENV चर के लिए "उत्पादन"समान परिणाम प्राप्त करने के लिए।

अन्य प्रकार की निर्भरताएँ

निर्भरता और निर्भरता के अलावा, Node.js भी संकुल को वर्गीकृत करता है सहकर्मी और वैकल्पिक निर्भरता.

सहकर्मी निर्भरता

सहकर्मी निर्भरताएँ निर्भरताएँ हैं जो एक पैकेज तब उपयोग करता है जब यह किसी विशिष्ट संस्करण या किसी अन्य पैकेज के संगत संस्करण की अपेक्षा करता है जो इसका उपयोग करने वाले एप्लिकेशन में मौजूद हो।

सहकर्मी निर्भरता का उद्देश्य यह सुनिश्चित करना है कि एक पैकेज अपनी निर्भरताओं के साथ सही ढंग से काम करता है और विरोध या संगतता के मुद्दों से बचा जाता है।

v7 से कम npm संस्करणों के लिए, सहकर्मी निर्भरताएँ स्वचालित रूप से स्थापित नहीं होती हैं। बल्कि कोड जिसमें पैकेज शामिल है, उसे एक निर्भरता के रूप में शामिल करना चाहिए। अगर पैकेज में यह शामिल नहीं है, तो एनपीएम चेतावनी देगा।

के अंतर्गत विद्यमान हैं सहकर्मी निर्भरता package.json फ़ाइल में वस्तु:

"सहकर्मी निर्भरता": {
"पैकेट": "^संस्करण"
}

वैकल्पिक निर्भरताएँ

वैकल्पिक निर्भरताएँ ऐसे पैकेज हैं जो किसी परियोजना की मुख्य कार्यक्षमता के लिए आवश्यक नहीं हैं, लेकिन उपलब्ध होने पर इसकी क्षमताओं को बढ़ा सकते हैं।

चूंकि परियोजना के ठीक से काम करने के लिए वैकल्पिक निर्भरताओं की आवश्यकता नहीं है, आप स्थापना के दौरान उन्हें छोड़ सकते हैं।

नीचे दिए गए आदेश को चलाने से स्थापना प्रक्रिया के दौरान वैकल्पिक निर्भरताएँ समाप्त हो जाएँगी:

एनपीएम इंस्टॉल --omit = वैकल्पिक

के अंतर्गत विद्यमान हैं वैकल्पिक निर्भरता package.json फ़ाइल में वस्तु:

"वैकल्पिक निर्भरता": {
"पैकेट": "^संस्करण"
}

श्रेणियां आपकी निर्भरताओं को प्रबंधित करना आसान बनाती हैं

निर्भरताओं को प्रभावी ढंग से समझने, प्रबंधित करने और वर्गीकृत करने से उत्पादन के लिए आवश्यक पैकेजों और केवल विकास के दौरान आवश्यक पैकेजों के बीच एक स्पष्ट अलगाव सुनिश्चित करने में मदद मिलती है।

यह अंतर कुशल निर्भरता प्रबंधन, उचित बंडलिंग और आपकी परियोजना की सुव्यवस्थित तैनाती में सहायता करता है।