इंटरफ़ेस डिस्क्रिप्शन लैंग्वेज

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

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

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

उदाहरण

 * एआईडीएल, जावा पर आधारित एंड्रॉइड के लिए, स्थानीय और रिमोट प्रक्रिया कॉल का समर्थन करता है, जावा नेटिव अंतरापृष्ठ (जेएनआई) के माध्यम से कॉल करके मूल अनुप्रयोगों से पहुंचा जा सकता है
 * अपाचे थ्रिफ्ट, अपाचे से, मूल रूप से फेसबुक द्वारा विकसित
 * अपाचे एवरो, अपाचे एवरो प्रणाली के लिए
 * संक्षिप्त डेटा परिभाषा लैंग्वेज (सीडीडीएल, आरएफसी 8610),, सीबीओआर और जेएसओएन डेटा संरचनाओं के लिए एक संकेतन
 * कॉर्टोस्क्रिप्ट, उन प्रणालियों के लिए डेटा और/या अंतरापृष्ठ का विवरण करें जिनके लिए सेमैंटिक संगतता की आवश्यकता होती है
 * एच, सिस्को की एच क्रॉस-प्लेटफ़ॉर्म सेवा विवरण लैंग्वेज
 * विस्तरणीय डेटा संकतन (ईडीएन), क्लोजर डेटा प्रारूप, जेएसओएन के समान
 * फ़्लैटबफ़र्स, गूगल का क्रमांकन प्रारूप जो शून्य-प्रतिलिपि अक्रमांकन का समर्थन करता है
 * फ्रैंक आईडीएल, विवृत स्रोत फ़्रैंका अंतरापृष्ठ परिभाषा लैंग्वेज
 * एफआईडीएल, फ्यूशिया संचालन प्रणाली के लिए अंतरापृष्ठ विवरण लैंग्वेज जिसे C ,C++, डार्ट, गो और रस्ट में ऐप घटकों को लिखने के लिए प्रारूप किया गया है।
 * आईपीएल, इमांड्रा प्रोटोकॉल लैंग्वेज
 * जेएसओएन वेब-सेवा प्रोटोकॉल (जेएसओएन-डब्ल्यूएसपी)
 * प्रभाव रहित प्रतिबिंबन डिवाइस अंतरापृष्ठ लैंग्वेज
 * माइक्रोसॉफ्ट अंतरापृष्ठ परिभाषा लैंग्वेज (एमआईडीएल), घटक ऑब्जेक्ट प्रारूप (सीओएम) और वितरित घटक ऑब्जेक्ट प्रारूप (डीसीओएम) के लिए समर्थन जोड़ने के लिए ओएमजी आईडीएल का माइक्रोसॉफ्ट विस्तारण
 * ओएमजी आईडीएल, ऑब्जेक्ट प्रबंधन समूह द्वारा मानकीकृत, सीओआरबीए (डीसीई/आरपीसी सेवाओं के लिए) और डीडीएस (डेटा प्रारूपिंग के लिए) में उपयोग किया जाता है, एक्सएमएल, एचटीएमएल और सीएसएस दस्तावेज़ों के डीओएम का विवरण करने के लिए डब्ल्यू3सी द्वारा भी चयनित किया गया है।
 * ओपनएपीआई विशिष्टता, आरईएसटी अंतरापृष्ठ के लिए एक मानक, जिसका उपयोग स्वैगर (सॉफ्टवेयर) और अन्य प्रौद्योगिकियों द्वारा किया जाता है।
 * विवृत सेवा अंतरापृष्ठ परिभाषाएँ
 * प्रोटोकॉल बफ़र्स, गूगल का आईडीएल
 * आरईएसटीफुल सेवा विवरण लैंग्वेज (आरएसडीएल)
 * स्मिथी, एक एडब्ल्यूएस-विकसित प्रोटोकॉल-निष्पक्ष अंतरापृष्ठ परिभाषा लैंग्वेज।
 * इंटरनेट संचार इंजन के लिए विशिष्टि लैंग्वेज (आइस, स्लाइस)
 * यूनिवर्सल नेटवर्क ऑब्जेक्ट, OpenOffice.org का घटक प्रारूप
 * वेब एप्लिकेशन विवरण लैंग्वेज (डब्ल्यूएडीएल)
 * वेब आईडीएल, इसका उपयोग वेब ब्राउज़र में लागू किए जाने वाले अंतरापृष्ठ का वर्णन करने के लिए किया जा सकता है।
 * वेब सेवा विवरण लैंग्वेज (डब्ल्यूएसडीएल)
 * एक्ससीबी, एक्स विंडो प्रणाली के लिए एक्स प्रोटोकॉल विवरण लैंग्वेज
 * क्रॉस प्लेटफ़ॉर्म अंतरापृष्ठ विवरण लैंग्वेज (एक्सपीआईडीएल), एक्सपीसीओम अंतरापृष्ठ निर्दिष्ट करने का मोज़िला का तरीका

यह भी देखें
उपयोगकर्ता अंतरापृष्ठ मार्कअप लैंग्वेज
 * घटक-आधारित सॉफ्टवेयर इंजीनियरिंग
 * अंतरापृष्ठ-आधारित प्रोग्रामिंग
 * जावा अंतरापृष्ठ परिभाषा लैंग्वेज
 * संगणन और आईटी संक्षिप्ताक्षरों की सूची
 * यूनिवर्सल अंतरापृष्ठ भाषा

बाहरी संबंध

 * Documenting Software Architecture, Documenting Interfaces (PDF)
 * ओएमजी Specification of ओएमजी IDL
 * ओएमजी Tutorial on ओएमजी IDL