विषय - सूची[छिपाना][प्रदर्शन]
कई कंपनियां अपने ग्राहकों को समय के बदलाव और दुनिया के काम करने के तरीके के आलोक में एक डिजिटल अनुभव देने के लिए व्यावहारिक एप्लिकेशन और सॉफ्टवेयर विकसित करने का प्रयास कर रही हैं।
ऐसा करके, वे अपने ग्राहकों की मांगों को बेहतर ढंग से समायोजित कर सकते हैं।
इन डिजिटल विज़न को साकार करने के लिए डेवलपर्स के साथ काम करना मुश्किल हो सकता है। उनमें से एक प्रमुख शब्दों और अवधारणाओं से अवगत होना है जो सॉफ्टवेयर विकास प्रक्रिया के दौरान उपयोग किए जाते हैं।
इससे भी बदतर, हर डेवलपर इन विचारों को संक्षेप में और आसानी से उन लोगों के सामने व्यक्त नहीं कर सकता है जो अपने उद्योग में विशेषज्ञ नहीं हैं। एसडीके और एपीआई दो ऐसे विचार हैं।
भले ही ये वाक्यांश ओवरलैप होते हैं क्योंकि इनका उपयोग अक्सर सॉफ़्टवेयर विकास के दौरान किया जाता है।
इस वजह से उन्हें अलग बताना अब बहुत कठिन है। इसके अतिरिक्त, कुछ डेवलपर्स अनुरोध कर सकते हैं कि आप सिस्टम को कनेक्ट करते समय दोनों के बीच चयन करें, जो एक समस्या है।
जब आप किसी अवधारणा को पूरी तरह से नहीं समझते हैं तो आप उनमें से कैसे चयन कर सकते हैं? क्या उनमें से किसी एक को चुनना आवश्यक है?
समझने में मदद करने के लिए स्पष्ट परिभाषाओं, उदाहरणों और केस स्टडी के साथ, यह लेख इन दो धारणाओं के बीच के अंतरों का पता लगाएगा।
एसडीके क्या है?
एसडीके एक सॉफ्टवेयर विकास किट के लिए खड़ा है, जैसा कि नाम से पता चलता है। यह एक किट है जिसमें सॉफ्टवेयर टूल और ऐप शामिल होते हैं जिन्हें प्रोग्रामर को विभिन्न प्लेटफॉर्म के लिए एप्लिकेशन बनाने की आवश्यकता होती है।
इसमें ऐप मॉड्यूल बनाने के लिए आवश्यक सभी चीजें शामिल हैं। सॉफ़्टवेयर डेवलपमेंट टूल का एक समूह जो प्लेटफ़ॉर्म के लिए विशिष्ट है, एक SDK बनाता है।
ये उपकरण डिबगर, कंपाइलर, कोड लाइब्रेरी (फ्रेमवर्क के रूप में भी जाना जाता है), या विशेष रूप से ऑपरेटिंग सिस्टम के लिए डिज़ाइन किए गए रूटीन और सबरूटीन हो सकते हैं।
ठीक उसी तरह जैसे आपको एक डेस्क को ठीक से सेट करने के लिए कई अलग-अलग उत्पादों की आवश्यकता होगी, एसडीके का उपयोग करना ऐसा करने के समान है। इसमें डेस्क के अलग-अलग घटक, सेटअप निर्देश और डेस्क को इकट्ठा करने के लिए आवश्यक उपकरण शामिल होंगे।
एक विशिष्ट एसडीके के निर्माण के टुकड़ों में निम्नलिखित शामिल हैं:
- कोड पुस्तकालय: पहिया घूमने के बजाय, डेवलपर्स कोड पुस्तकालयों के लिए पहले से मौजूद संसाधनों (जैसे कोड अनुक्रम) का उपयोग कर सकते हैं।
- परीक्षण और विश्लेषण के लिए उपकरण: ये उपकरण यह आकलन करते हैं कि परीक्षण और उत्पादन सेटिंग्स दोनों में कोई एप्लिकेशन कितना अच्छा प्रदर्शन करता है।
- दस्तावेज़ीकरण: विकास प्रक्रिया के दौरान, डेवलपर्स आवश्यकतानुसार लिखित निर्देशों से परामर्श करते हैं।
- कंपाइलर: एक कंपाइलर सॉफ्टवेयर है जो प्रोग्रामिंग भाषाओं में बयानों का विश्लेषण करता है और उन्हें "कोड" में परिवर्तित करता है जिसे प्रोसेसर समझ सकता है।
- डीबगर: एक डिबगर प्रोग्रामर को कोड में दोष खोजने और ठीक करने में मदद करता है।
- कोड नमूने प्रोग्रामिंग नौकरियों या परिस्थितियों को प्रकट करते हैं जो किसी एप्लिकेशन या वेब पेज की अधिक विस्तृत समझ प्रदान करते हैं।
- रूटीन और सबरूटीन: समग्र कंप्यूटर कोड में, एक रूटीन या सबरूटीन एक विधि, कार्य, संचालन, उपप्रोग्राम या कोड का टुकड़ा होता है जिसे कहीं भी बुलाया और निष्पादित किया जा सकता है। उदाहरण के लिए, किसी फ़ाइल को सहेजने के विकल्प को पूरा करने के लिए एक प्रक्रिया का उपयोग किया जाता है।
एसडीके कैसे काम करते हैं?
एसडीके डेवलपर्स को विभिन्न प्रकार के उपकरणों तक पहुंच प्रदान करते हैं जिनकी उन्हें सॉफ्टवेयर एप्लिकेशन को जल्दी से बनाने की आवश्यकता होती है।
उदाहरण के लिए, Google के Android और Apple के iOS के लिए, Facebook SDK प्रदान करता है। ये SDK मुफ़्त, ओपन-सोर्स लाइब्रेरी के रूप में काम करते हैं जो आपके Android या iOS एप्लिकेशन में Facebook को शामिल करना आसान बनाते हैं।
इसके अतिरिक्त, Microsoft जटिल अनुप्रयोगों के लिए.NET को एक फ्रेमवर्क SDK प्रदान करता है। इसमें विंडोज़ ऐप बनाने के लिए आवश्यक उदाहरण, संसाधन और लाइब्रेरी शामिल हैं।
अब जब आप SDK की बारीकियों से परिचित हो गए हैं, तो आइए देखें कि वे कैसे काम करते हैं।
- आपको पहले अपने प्लेटफॉर्म के लिए आवश्यक "किट" खरीदना, डाउनलोड करना और इंस्टॉल करना होगा। यह निर्देशों, उदाहरणों और घटक घटकों वाली फ़ाइलों को डाउनलोड करने पर लागू हो सकता है।
- इसके बाद, आप एकीकृत विकास वातावरण (आईडीई) और एक नया एप्लिकेशन बनाने के लिए आवश्यक सभी उपकरणों तक पहुंच सकते हैं। फिर प्रोग्रामर अपने ऐप्स बनाना शुरू कर सकते हैं। एक कंपाइलर का कार्य अब स्पष्ट है।
- अंत में, आप दस्तावेज़ीकरण, कोड उदाहरण, निर्देश और विश्लेषण टूल का उपयोग करके नए एप्लिकेशन का परीक्षण कर सकते हैं।
इन चरणों को पूरा करने के बाद आप एसडीके के साथ अपने साहसिक कार्य की शुरुआत कर सकते हैं।
एसडीके के प्रकार
एसडीके वेबसाइटों और मोबाइल एप्लिकेशन विकसित करने की नींव हैं।
आइए कुछ विशिष्ट SDK प्रकारों की जाँच करें।
- प्लेटफार्म एसडीके: ये एसडीके सभी प्लेटफॉर्म के लिए ऐप बनाने के लिए आवश्यक उपकरण हैं। उदाहरण के लिए, विंडोज 11 स्टोर ऐप विंडोज 11 एसडीके का उपयोग करके बनाए जाते हैं।
- एक्सटेंशन एसडीके: इन पूरक सॉफ्टवेयर विकास किटों का उपयोग विकास के माहौल को बढ़ाने और निजीकृत करने के लिए किया जाता है। हालांकि, एक निश्चित प्लेटफॉर्म के लिए ऐप्स बनाने के लिए वे आवश्यक नहीं हैं।
- एनालिटिक्स एसडीके: ये एसडीके उपयोगकर्ता गतिविधियों, व्यवहारों आदि के बारे में जानकारी एकत्र करते हैं, उदाहरण के लिए, Google से एनालिटिक्स एसडीके।
- मुद्रीकरण के लिए एसडीके: इन एसडीके का उपयोग डेवलपर्स द्वारा पहले से मौजूद ऐप में विज्ञापन डालने के लिए किया जाता है। वे पैसा बनाने के विशेष उद्देश्य के साथ स्थापित किए गए हैं।
- प्रोग्रामिंग भाषाओं के लिए एसडीके: इन एसडीके का उपयोग कुछ भाषाओं में प्रोग्राम बनाने के लिए किया जाता है। उदाहरण के लिए, जावा डेवलपर किट (JDK) का उपयोग जावा प्रोग्रामिंग भाषा को नियोजित करने वाले एप्लिकेशन बनाने के लिए किया जाता है।
एसडीके के लाभ
- एसडीके की रेडीमेड घटकों तक सरल पहुंच के कारण सॉफ्टवेयर विकास में तेजी लाई जा सकती है।
- एसडीके द्वारा प्रदान की गई त्वरित विकास प्रक्रिया के कारण, डेवलपर्स कोड स्निपेट का पुन: उपयोग कर सकते हैं। यह प्रोग्रामर को महत्वपूर्ण कार्यों पर ध्यान केंद्रित करने के लिए पर्याप्त समय देता है।
- एसडीके अधिक सहज सॉफ्टवेयर और एप्लिकेशन इंटरैक्शन प्रदान करते हैं। इसके अतिरिक्त, वे उपयुक्त कागजी कार्रवाई के माध्यम से आवश्यक जानकारी तक आसान पहुँच प्रदान करते हैं।
- एसडीके व्यापक दस्तावेज़ीकरण और अंतर्निहित कोड सहायता से लैस हैं। नतीजतन, डेवलपर्स को अपने सवालों के जवाब देने के लिए विषय विशेषज्ञों की तलाश करने की आवश्यकता नहीं है।
- उपरोक्त तत्व सॉफ्टवेयर विकास और परिनियोजन के बाद के चरणों के दौरान खर्च की गई अनावश्यक लागत को कम करने में सहायता करते हैं।
अब चलिए ट्रांजिशनल एपीआई भाग पर चलते हैं।
एपीआई क्या है?
एप्लिकेशन प्रोग्रामिंग इंटरफ़ेस को संक्षिप्त नाम API द्वारा जाना जाता है। यह दिशानिर्देशों के एक सेट का वर्णन करता है जिसके माध्यम से प्लेटफ़ॉर्म, गैजेट या प्रोग्राम एक दूसरे से जुड़ते हैं और सूचनाओं का आदान-प्रदान करते हैं।
एपीआई या तो अलग-अलग इकाइयां या एसडीके का एक घटक हो सकता है। यह दोनों ही मामलों में प्रणालीगत स्तर पर कई अनुप्रयोगों में समकालिकता बनाता है।
कुशल एपीआई का निर्माण उन डेवलपर्स पर निर्भर करता है जो मालिकाना या गैर-मुक्त सॉफ़्टवेयर का अधिकतम लाभ उठाते हैं। उसके बाद, वे विकसित एपीआई सेवाओं का उपयोग कर सकते हैं जिन्हें उपभोक्ता एक्सेस कर सकते हैं।
एक दो-पक्षीय अनुबंध और एपीआई समान हैं। तेजी से सूचना प्रसारण के साथ-साथ यह निर्देश भी प्रदान करता है कि सूचना कैसे पहुंचाई जानी चाहिए।
"एपीआई" और "इंटरफ़ेस" शब्द कभी-कभी एक ही चीज़ को संदर्भित करने के लिए उपयोग किए जाते हैं क्योंकि कुछ एपीआई "इंटरफ़ेस" प्रदान करने के लिए जाने जाते हैं।
एपीआई में दो आवश्यक भाग होते हैं:
- तकनीकी सामग्री: एपीआई एकीकरण के लिए प्रोटोकॉल के बारे में जानकारी को एपीआई विनिर्देश (यानी, अन्य प्लेटफार्मों और अनुप्रयोगों के साथ) के रूप में संदर्भित किया जाता है। यह सुनिश्चित करने के लिए कि एपीआई का प्रभावी ढंग से उपयोग किया जाता है, इसे पूरी तरह से प्रलेखित किया जाना चाहिए।
- कनेक्शन: एक इंटरफ़ेस एपीआई तक पहुँचने का एक साधन प्रदान करता है। यदि यह एक वेब एपीआई है, तो इसे किसी कीवर्ड या किसी भिन्न इंटरफ़ेस के माध्यम से एक्सेस किया जा सकता है।
एपीआई कैसे काम करता है?
एपीआई विविध एप्लिकेशन सेटों में निर्बाध संचार सक्षम करते हैं। एक सुपरमार्केट स्टोर का मामला लें जहां आपके पास पहले से ही एक ऐप है जहां ग्राहक ऑनलाइन आइटम ब्राउज़ और ऑर्डर कर सकते हैं।
आपका ऐप पहले से ही यह सेवा प्रदान करता है। आइए कल्पना करें कि उपभोक्ता भी किसी शहर के किसी विशेष क्षेत्र में खाद्य भंडार की खोज करना चाहते हैं।
ऐसे में आप अपने ऐप को शहर में मौजूद नामी किराना सर्विस प्रोवाइडर्स से कनेक्ट कर सकते हैं। जियोलोकेशन एपीआई को लागू करके, उपयोगकर्ता एक अलग जियोलोकेशन एप्लिकेशन के बारे में परेशान किए बिना खाद्य भंडार की तलाश कर सकते हैं।
तकनीकी दृष्टिकोण से, एपीआई अनुरोध में नीचे सूचीबद्ध कार्रवाइयां शामिल हैं:
- आपके ऐप से कार्य एक एप्लिकेशन उपयोगकर्ता द्वारा शुरू किया गया है जो एक अनुरोध बनाता है।
- वेबसर्वर को कॉल करके, एपीआई अनुरोध को प्रसारित करता है। अनुरोध आमतौर पर एपीआई एंडपॉइंट तक पहुंचने का इरादा है, इसलिए एपीआई जानता है कि इसे कहां भेजना है। समापन बिंदु सर्वर URL द्वारा निर्दिष्ट किया गया है।
- अंत में, काम समाप्त हो जाता है क्योंकि डेटाबेस या बाहरी प्रोग्राम आवश्यक सेवा प्रदान करता है।
एपीआई के प्रकार
आरईएसटी (प्रतिनिधि राज्य स्थानांतरण)
एपीआई के सबसे सामान्य रूपों में से एक आरईएसटी एपीआई है, जिसे कई मानकों से जाना चाहिए, जिनमें निम्न शामिल हैं:
- क्लाइंट-सर्वर आर्किटेक्चर: क्लाइंट को सर्वर परिवर्तन से प्रभावित नहीं होना चाहिए
- CRUD (क्रिएट, रीड, अपडेट, डिलीट) और JSON का उपयोग क्लाइंट और सर्वर द्वारा संचार करने के लिए किया जाता है।
- किन्हीं दो अनुरोधों के बीच, सर्वर क्लाइंट की स्थिति को सहेजता नहीं है।
डेटा ट्रांसपोर्ट अक्सर REST का उपयोग करता है। उदाहरण के लिए, किसी अन्य प्रोग्राम में Facebook उपयोगकर्ता का नाम, स्थान और प्रोफ़ाइल छवि प्राप्त करने के लिए, कोई Facebook API का उपयोग करता है।
SOAP (सिंपल ऑब्जेक्ट एक्सेस प्रोटोकॉल) APIs
वे वेब-आधारित एपीआई हैं जिनका उपयोग तब किया जाता है जब डेटा गोपनीयता और सुरक्षा में वृद्धि आवश्यक हो। वे HTTP, SMTP, TCP/IP, और अन्य सहित वेब-आधारित प्रोटोकॉल के माध्यम से संचार करने में सक्षम हैं।
REST एक वास्तुशिल्प प्रतिमान है, जबकि SOAP प्रोटोकॉल का एक संग्रह है। नतीजतन, SOAP- आधारित प्रोटोकॉल का उपयोग RESTful API को विकसित करने के लिए किया जा सकता है।
आरपीसी (रिमोट प्रोसीजर कॉल)
इसका उपयोग किसी भिन्न सिस्टम पर कोड चलाने के लिए किया जाता है। RPC कॉल विधियों, REST के विपरीत, जहाँ क्लाइंट केवल डेटा का अनुरोध करता है। अनुरोध, जिन्हें XML-RPCs और JSON-RPCs के रूप में जाना जाता है, XML या JSON रूपों में प्रस्तुत किया जा सकता है।
प्रक्रिया का उपयोग करने के बाद, अनुरोधकर्ता अन्य सिस्टम से प्रतिक्रिया की अपेक्षा करता है।
उदाहरण के लिए, एक भुगतान गेटवे एपीआई एक क्रेडिट कार्ड नंबर (इसके निष्कर्ष पर कोड चलाकर) सत्यापित करता है और अनुरोध करने वाले ऐप को सूचित करता है कि यह सफल या असफल था।
एपीआई के लाभ
- नियमित उपयोगकर्ताओं और विकास पेशेवरों दोनों को एपीआई से लाभ होता है। एजेंसी सिस्टम को अपग्रेड करने और संगठन की व्यावसायिक क्षमता को बढ़ाने के लिए, डेवलपर्स व्यावसायिक हितधारकों के साथ सहयोग कर सकते हैं।
- एपीआई प्रोग्राम या उत्पाद के समग्र प्रदर्शन में सुधार करते हुए अलग-अलग सॉफ्टवेयर प्रोग्राम को जोड़ते हैं।
- एक बार बनाने के बाद, एपीआई एक्सेस के माध्यम से विभिन्न चैनलों में सूचनाओं को आसानी से साझा और पुनर्व्यवस्थित किया जा सकता है।
- एपीआई का उपयोग करके अनुकूलन संभव बनाया गया है। जानकारी या सेवाओं को उनकी आवश्यकताओं के अनुरूप बनाकर, प्रत्येक उपयोगकर्ता या व्यवसाय इससे लाभ उठा सकता है।
- एपीआई सॉफ्टवेयर विकास प्रक्रिया को तेज करने में प्रोग्रामर की सहायता करते हैं। एपीआई ऑटोमेशन कुंजी रखता है क्योंकि काम को संभालने के लिए मैन्युअल टास्क फोर्स का उपयोग कंप्यूटर के बजाय किया जाता है। एपीआई की बदौलत कंपनियां अपने वर्कफ़्लोज़ को एक ही बार में अपग्रेड कर सकती हैं।
एसडीके और एपीआई: मुख्य अंतर
जैसा कि पूर्ववर्ती स्पष्टीकरण प्रदर्शित करते हैं, ये विचार वास्तव में अतिव्यापी हैं और उन तरीकों से परस्पर जुड़े हुए हैं जो उनके भेदों को अलग करते हैं।
हालांकि, हम किसी भी शेष अनिश्चितता को दूर करने के लिए स्पष्ट अंतर निकालने का प्रयास करेंगे।
- एपीआई में एसडीके शामिल हो सकते हैं, लेकिन एसडीके को एपीआई में शामिल नहीं किया जा सकता है।
- दो प्रोग्राम एक एपीआई के लिए धन्यवाद संचार कर सकते हैं। शुरुआत से एप्लिकेशन बनाने के लिए आवश्यक सभी उपकरण एसडीके में हैं।
- एसडीके द्वारा एपीआई का उपयोग दो कार्यक्रमों के बीच संचार को सक्षम करने के लिए किया जाता है। एपीआई के माध्यम से एप्लिकेशन नहीं बनाए जा सकते हैं।
- एसडीके का उपयोग करना आसान है और अधिक तेज़ी से एकीकृत होता है। एपीआई अनुकूलित करने के लिए सरल हैं और कोड पुस्तकालयों की कमी है।
- संक्षेप में, एक एपीआई एक एप्लिकेशन इंटरफ़ेस के रूप में कार्य करता है। एसडीके ऐप्स बनाने के लिए ब्लॉक बना रहे हैं।
- डेवलपर हमेशा SDK का उपयोग करके ऐप्स बनाते हैं। केवल जब अन्य प्लेटफार्मों के साथ बाहरी संपर्क की आवश्यकता होती है तो एपीआई तस्वीर में प्रवेश करते हैं।
- एपीआई एक ऐप से दूसरे ऐप में अनुरोध ट्रांसफर करते हैं और मूल ऐप को प्रतिक्रियाएं प्रदान करते हैं। एसडीके में वह सब कुछ शामिल है जो आपको अन्य कार्यक्रमों के साथ संवाद करने और कार्यक्रम बनाने के लिए चाहिए।
एसडीके और एपीआई के बीच चयन
संक्षेप में, एपीआई वर्णन करते हैं कि कितने प्लेटफॉर्म अपने संचालन को सिंक्रनाइज़ कर सकते हैं। प्रोटोकॉल और मानकों के माध्यम से, वे अनुप्रयोग एकीकरण की सुविधा प्रदान करते हैं। इसलिए वे एक एसडीके के आवश्यक भागों में से एक हैं।
हालांकि, ग्राउंड अप से प्रोग्राम बनाने के लिए एपीआई का उपयोग करना संभव नहीं है।
SDK नए सॉफ़्टवेयर या एप्लिकेशन बनाना आसान बनाते हैं जो एक निश्चित प्लेटफ़ॉर्म या प्रोग्रामिंग भाषा के लिए विशिष्ट होते हैं। आमतौर पर, एक एसडीके में बाहरी संचार के लिए कम से कम एक एपीआई होता है।
यदि आप उस प्लेटफ़ॉर्म के लिए इसे विकसित कर रहे हैं, तो उस प्लेटफ़ॉर्म के लिए SDK का उपयोग करें जिस पर आपका ऐप चल रहा है, जैसे कि iOS। फेसबुक जैसे अन्य ऑनलाइन ऐप के साथ इंटरैक्ट करने के लिए ऐप के एपीआई का उपयोग करें।
निष्कर्ष
अंत में, एसडीके में अक्सर एपीआई शामिल होते हैं, लेकिन एसडीके के साथ कोई एपीआई नहीं आता है। एसडीके ऐप बनाना संभव बनाता है, ठीक उसी तरह जैसे घर की नींव घर को लंबा खड़ा करना संभव बनाती है।
इसके अतिरिक्त, एपीआई निर्धारित करते हैं कि कैसे एसडीके के भीतर ऐप्स काम करते हैं और संवाद करते हैं, ठीक वैसे ही जैसे फोन लाइनें बाहरी दुनिया से संपर्क के लिए करती हैं।
एक जवाब लिखें