क्या वास्तव में एक एपीआई का अर्थ है? [बन्द है]


164

मैंने एक प्रोग्रामिंग भाषा में एक एपीआई की परिभाषा के लिए खोज की है और मुझे अभी भी समझना मुश्किल है।

क्या कोई मुझे सरल, आम आदमी की शर्तों में सलाह दे सकता है:

  1. एपीआई क्या है?
  2. इसका उपयोग कैसे किया जा सकता है?
  3. इसका उपयोग कब और कहाँ किया जाता है?

7
क्या आपने पहले FOLDOC की कोशिश की थी? foldoc.org/API उनकी परिभाषा मुझे काफी हद तक "आम आदमी" लगती थी
रे तोल

@ क्या मैंने इसे इस बात के लिए लिया होगा कि ओपी पहले ही विकिपीडिया को देख ले क्योंकि विकिपीडिया की जाँच कौन नहीं करता है? विकिपीडिया की जाँच करने से पहले FOLDOC की 1995 परिभाषा का उपयोग करने की संभावना पर गलत कटाक्ष। क्या मुझे टिप्पणी को हटाना चाहिए?
रे तोल

यदि आप एक आम आदमी की व्याख्या के लिए देख रहे हैं, तो कोशिश करें: welcometosoftware.com/what-is-an-api (अस्वीकरण: मैंने इसे लिखा है)
सैम मलयेक

जवाबों:


129

खोजों में विकिपीडिया शामिल होना चाहिए, जो कई प्रोग्रामिंग अवधारणाओं / शर्तों जैसे एप्लिकेशन प्रोग्रामिंग इंटरफ़ेस के लिए आश्चर्यजनक रूप से अच्छा है :

एपीआई क्या है?

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

इसका उपयोग कैसे किया जा सकता है?

उसी तरह नियमों के किसी भी सेट का उपयोग किया जाता है।

इसका उपयोग कब और कहाँ किया जाता है?

स्वाभाविक रूप से दायरे और एपीआई पर निर्भर करता है। इन पर विचार करें:

  1. X86 (IA-32) निर्देश सेट (बहुत उपयोगी ;-)
  2. एक BIOS रुकावट कॉल
  3. OpenGL जिसे अक्सर C लाइब्रेरी के रूप में उजागर किया जाता है
  4. कोर विंडोज सिस्टम कॉल: WinAPI
  5. रूबी के मुख्य पुस्तकालय में कक्षाएं और तरीके
  6. दस्तावेज़ ऑब्जेक्ट मॉडल जावास्क्रिप्ट को ब्राउज़र द्वारा अवगत कराया
  7. वेब सेवाएं , जैसे कि फेसबुक के ग्राफ एपीआई द्वारा प्रदान की गई
  8. जावा में जेएनआई जैसे प्रोटोकॉल का कार्यान्वयन

खुश कोडिंग।


4
"सुपरराइजिंग गुड" कहने पर +1 करें। कंप्यूटिंग के लिए, विकिपीडिया सबसे ऊपर है। कुछ लोग प्रकृति द्वारा विकिपीडिया बनाम ब्रिटानिका की तुलना को याद कर सकते हैं: '' 'वॉल स्ट्रीट जर्नल के अनुसार: "[वेल्स] कहते हैं कि उन्हें खुशी थी कि प्रकृति ने विज्ञान से संबंधित विषयों की तुलना करने के लिए चुना' क्योंकि इतिहास और सामाजिक विज्ञानों पर, हम बहुत अधिक हैं कमजोर। ' अन्य क्षेत्रों में - कंप्यूटर विज्ञान और 'स्टार ट्रेक' के इतिहास सहित, वह कहता है - विकिपीडिया बेहतर तरीका है। '' '' '' ( dailybarometer.com/forum/… से )
Ray Toal

2
@ user166390 एपीआई पर विकिपीडिया प्रविष्टि अब बहुत बुरा है ... मैं एपिस लिखता हूं और उस प्रविष्टि ने वास्तव में मुझे भ्रमित किया। अच्छी बात यह है कि आपने जो किया वह उद्धृत किया, क्योंकि यह किसी भी तरह से बहुत खराब हो गया है।
क्रि।

मैं पूछना चाहता हूँ कि php फ़ाइल है जिसे ajax अनुरोध के URL में डाल दिया गया है? या शायद ajax अनुरोध ही एक एपीआई पहले से ही है?
ब्राउनमैन रिवाइवल

क्या API का उपयोग इंटरनेट ऑफ थिंग्स के लिए भी किया जाता है? या IoT डिवाइस डेटा कैसे भेजते और प्राप्त करते हैं?
पाथ्रोस

57

एक एपीआई वह इंटरफ़ेस है जिसके माध्यम से आप किसी व्यक्ति के कोड का उपयोग करते हैं या जिसके माध्यम से किसी और का कोड आपके पास पहुंचता है। सार्वजनिक विधियों और गुणों के प्रभाव में।


4
वह अंतिम वाक्य उल्लेखनीय है और उस पर विस्तार किया जा सकता है ...
tumultous_rooster

45

1) एपीआई क्या है?

एपीआई एक अनुबंध है। विशिष्ट तरीकों से पूछे जाने पर वर्णित सेवाओं को करने का वादा।

2) इसका उपयोग कैसे किया जाता है?

अनुबंध में निर्दिष्ट नियमों के अनुसार। एपीआई का पूरा बिंदु यह परिभाषित करना है कि इसका उपयोग कैसे किया जाता है।

३) इसका उपयोग कब और कहाँ किया जाता है?

इसका उपयोग तब किया जाता है जब 2 या अधिक अलग-अलग प्रणालियों को कुछ हासिल करने के लिए एक साथ काम करने की आवश्यकता होती है जो वे अकेले नहीं कर सकते।


44

खैर, सभी उत्तरों के अलावा, मैं सिर्फ एक उदाहरण जोड़ रहा हूं।

के रूप में अन्य लोगों ने कहा API stands for Application Programming Interface, जिसके माध्यम से softwares can interact with each other। ध्यान दें, मानव अंतःक्रिया नहीं।

जहां इसका उपयोग किया जाता है

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

एप्लिकेशन आपके क्रेडिट कार्ड के विवरण को एक दूरस्थ एप्लिकेशन को भेजेगा जो आपकी जानकारी को मान्य करेगा और परिणाम को आपके आवेदन पर वापस भेज देगा। इस परिदृश्य में API का उपयोग किया जाता है।

मुझे आशा है कि यह शुरुआती लोगों के लिए मदद करता है जो वास्तव में नहीं समझते हैं कि एपीआई क्या है।

एक और उदाहरण

मौसम का अनुप्रयोग

एपीआई के बिना - मौसम एप्लिकेशन को मौसम डॉट कॉम साइट खोलनी चाहिए और एक मानव के रूप में विवरण पढ़ना होगा।

एपीआई के साथ - मौसम का आवेदन weather.com को एक संदेश भेजेगा और परिणाम प्राप्त करेगा और फिर इसे प्रदर्शित करेगा।

स्रोत - विभिन्न ऑनलाइन संसाधन


2
जाहिर है दैनिक उदाहरण के साथ समझाया thanku इतना मेरे जैसे फ्रेशर्स के लिए मददगार होगा
साई

तो इस मामले में एपीआई मौसम है। com मेरी आवश्यकताओं पर डेटा भेजने के लिए? या एपीआई मेरा ऐप है जो अनुरोध भेजता है, डेटा प्राप्त करता है और इसे किसी तरह प्रदर्शित करता है? या एपीआई दोनों weather.com और मेरे ऐप का संबंध है?
पवेल

1
@ पवेल एपीआई वह एप्लिकेशन होगा जो डेटा का अनुरोध करता है
गिब्स

@ Paweł इसे इस तरह से सोचो: एक ऐप के लिए दो इंटरफ़ेस हैं। सबसे पहले, एक मानव उपयोगकर्ता के लिए यूआई (इंटरफ़ेस)। दूसरा, एक और एप्लिकेशन प्रोग्राम के लिए एपीआई (इंटरफ़ेस) है। इस प्रकार, मौसम एप्लिकेशन और Weather.com के बीच एपीआई मौसम.कॉम है।
vpibano

15
  1. एपीआई (एप्लीकेशन प्रोग्रामिंग इंटरफेस) परिभाषित ऑपरेटिंग सिस्टम या कंप्यूटर पर चलने वाले किसी अन्य प्रोग्राम या सेवा के साथ इंटरफेस करने के लिए निर्धारित कार्यों और विधियों का एक समूह है।

  2. यह आमतौर पर आपके सॉफ़्टवेयर में एक पुस्तकालय के संदर्भ को स्थापित करने या एक dll से फ़ंक्शन आयात करने के लिए उपयोग किया जाता है।

  3. इसका उपयोग लगभग सभी सॉफ्टवेयरों में एक रूप में या दूसरे रूप में किया जाता है, आपके कार्यक्रम में स्पष्ट रूप से कहा जाता है या संकलक द्वारा बुलाया जाता है।


10

एपीआई एप्लिकेशन प्रोग्रामिंग इंटरफेस के लिए खड़ा है, यानी एपीआई एक निश्चित प्रणाली / आवेदन / पुस्तकालय / आदि के साथ बातचीत करने के लिए एक आवेदन के लिए रास्ता है।

उदाहरण के लिए, ओएस के लिए एपीआई (विनएपीआई), अन्य अनुप्रयोगों के लिए एपीआई (जैसे डेटाबेस) और विशिष्ट पुस्तकालयों के लिए (उदाहरण के लिए, छवि प्रसंस्करण), आदि हैं।

एपीआई आमतौर पर एक ग्राहक अनुप्रयोग द्वारा उपभोज्य रूप में विकसित किए जाते हैं। C / C ++ एप्लिकेशन के लिए, यह एक सेट हेडर फाइलें और डायनेमिक / स्टैटिक लाइब्रेरी हैं। जावा के लिए - जार का सेट। और इसी तरह।


क्या API का उपयोग इंटरनेट ऑफ थिंग्स के लिए भी किया जाता है? IoT डिवाइस डेटा कैसे भेजते और प्राप्त करते हैं?
पाथ्रोस

7

यह सॉफ्टवेयर घटकों का एक सेट है जो एक दूसरे के साथ बातचीत करते हैं। यह एक एप्लिकेशन, ऑपरेटिंग सिस्टम या किसी अन्य चीज़ के निर्माण के लिए फ़ंक्शंस, वेरिएबल्स और ऑब्जेक्ट क्लास का एक सेट प्रदान करता है।


6

आम आदमी की शर्तों में, मैंने हमेशा कहा है कि एपीआई दो लोगों के बीच एक अनुवादक की तरह है जो अलग-अलग भाषाएं बोलते हैं। सॉफ्टवेयर में, एपीआई (या अनुवादक) का उपयोग करके डेटा का उपभोग या वितरण किया जा सकता है ताकि दो अलग-अलग प्रकार के सॉफ्टवेयर संवाद कर सकें। अच्छे सॉफ्टवेयर में एक मजबूत अनुवादक (एपीआई) होता है जो सुरक्षा और डेटा स्वच्छता के लिए नियमों और प्रोटोकॉल का पालन करता है।

मैं "मा मार्कर, एक कोडर नहीं। यह सब काफी सही नहीं हो सकता है, लेकिन यह है कि मैंने" लगभग 10% के लिए व्यक्त करने की कोशिश की है ...


5

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

स्रोत


5

इस स्थिति पर विचार करें:

मार्क और लिसा गुप्त रूप से एक युगल हैं, और उम्र के अंतर के कारण उन्हें एक साथ रहने की अनुमति नहीं है। मार्क और लिसा हर रात मिलते हैं जब कोई नहीं देख रहा होता है। उन्होंने नियमों के अपने स्वयं के सेट को स्थापित किया है कि समय आने पर कैसे संपीडित करें। वह अपने बगीचे में खड़ा है और उसकी खिड़की पर छोटी चट्टान फेंकता है। लिसा को पता है कि यह समय है, और खिड़की से लहराते हुए और बाद में इसे खोलकर प्रतिक्रिया करता है ताकि मार्क अंदर चढ़ सके। यह उदाहरण था कि एपीआई कैसे काम करता है। चट्टान दूसरे छोर पर प्रारंभिक अनुरोध है। एक और अंत तरंगें, खिड़की खोलता है जो आधारभूत का अर्थ है "आपका स्वागत है!"।

एपीआई लगभग मानव भाषा की तरह है लेकिन कंप्यूटर के लिए है।


3

एक एपीआई उन इंटरफेस को परिभाषित करता है जिसके द्वारा एक सॉफ्टवेयर का स्रोत स्तर पर दूसरे के साथ संचार होता है। यह इंटरफेस का एक मानक सेट प्रदान करके अमूर्तता प्रदान करता है - आमतौर पर कार्य - सॉफ्टवेयर का एक टुकड़ा (आमतौर पर एक उच्च-स्तरीय टुकड़ा) सॉफ्टवेयर के दूसरे टुकड़े (आमतौर पर निचले स्तर का टुकड़ा) से आह्वान कर सकता है।

उदाहरण के लिए, एक एपीआई कार्य के परिवार के माध्यम से स्क्रीन पर ड्राइंग पाठ की अवधारणा को रद्द कर सकता है जो पाठ को आकर्षित करने के लिए आवश्यक सब कुछ प्रदान करता है। एपीआई केवल इंटरफ़ेस को परिभाषित करता है; सॉफ्टवेयर का वह टुकड़ा जो वास्तव में एपीआई प्रदान करता है, एपीआई के कार्यान्वयन के रूप में जाना जाता है।

एपीआई को "कॉन्ट्रैक्ट" कहना आम है। यह सही नहीं है, कम से कम शब्द के कानूनी अर्थ में, चूंकि एपीआई एक दो-तरफ़ा समझौता नहीं है। एपीआई उपयोगकर्ता (आम तौर पर, उच्च-स्तरीय सॉफ़्टवेयर) में एपीआई और इसके कार्यान्वयन में शून्य इनपुट होता है। यह एपीआई का उपयोग कर सकता है, या इसका उपयोग बिल्कुल नहीं करता है: इसे ले लो या इसे छोड़ दो!

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


0

कहते हैं कि आप एक गेम विकसित कर रहे हैं और आप चाहते हैं कि गेम उपयोगकर्ता इसे खेलने से पहले अपनी फेसबुक प्रोफ़ाइल (अपनी प्रोफ़ाइल जानकारी प्राप्त करने के लिए) लॉग इन करें, इसलिए आपका गेम फेसबुक तक कैसे पहुंच सकता है? अब यहाँ एपीआई आता है। फ़ेसबुक ने आपके लिए यह करने के लिए पहले से ही प्रोग्राम (एपीआई) लिख दिया है, आपको बस अपने गेम एप्लीकेशन में उन कार्यक्रमों का उपयोग करना है। फेसबुक-एपीआई के माध्यम से आप अपनी सेवाओं का उपयोग अपने आवेदन में कर सकते हैं। यह एक अच्छा है और एपीआई पर विस्तृत नज़र ... http://money.howstuffworks.com/business- दूरसंचार/ how-to-leiture-an-api-for-conferencing1.htm


3
और आपने वास्तव में यह नहीं कहा कि यह क्या है ...:} और यह एक कार्यक्रम की तरह नहीं है, बल्कि सिर्फ एक इंटरफेस है। कुछ कार्यक्रम से निपटने का तरीका।
कामीकोलो

-1

एप्लिकेशन प्रोग्राम इंटरफ़ेस (एपीआई) सॉफ्टवेयर अनुप्रयोगों के निर्माण के लिए दिनचर्या, प्रोटोकॉल और उपकरणों का एक सेट है। एक एपीआई निर्दिष्ट करता है कि सॉफ्टवेयर घटकों को कैसे इंटरैक्ट करना चाहिए और ग्राफिक यूजर इंटरफेस (जीयूआई) घटकों को प्रोग्रामिंग करते समय एपीआई का उपयोग किया जाता है। एक अच्छा एपीआई सभी बिल्डिंग ब्लॉक्स प्रदान करके एक प्रोग्राम विकसित करना आसान बनाता है। एक प्रोग्रामर तब ब्लॉकों को एक साथ रखता है।

स्रोत: http://www.webopedia.com/TERM/A/API.html

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.