इसलिए ... मैं थोड़ा शोध कर रहा हूं। जो रुचि रखता है, उसके लिए थोड़ा इतिहास का पाठ इस प्रकार है। :) यदि आप केवल उत्तर में रुचि रखते हैं तो नीचे दिए गए निष्कर्ष पर जाएं।
1967 :
SIMULA 67 , पहला ऑब्जेक्ट-ओरिएंटेड प्रोग्रामिंग लैंग्वेज कीवर्ड को क्लास , ऑब्जेक्ट , रेफरेंस बाय कॉल , वैल्यू और वर्चुअल के रूप में परिभाषित करता है ।
सिमुला की विरासत प्रणाली मूल रूप से एक अलग नाम से जाना जाता था संयोजन (और बाद में के रूप में जाना लगाकर ,) तथ्य यह है कि supertypes का कोड कॉपी किया गया था और उपप्रकार का कोड 'concatenated' का जिक्र है। बाद में विरासत प्रणाली का एक और रूप उभरा, प्रतिनिधिमंडल , जहां सही प्रकार के संदर्भ में कॉल प्रतिनिधि हैं।
वर्चुअल सबसे अधिक संभावना उस प्रक्रिया को संदर्भित करता है जिसे कॉल करने के लिए वर्चुअल मेथड टेबल का उपयोग करके सही क्रियान्वयन के लिए भेजा जाना चाहिए । यह एक निश्चित / ठोस कार्यान्वयन की तुलना में आभासी है।
1971 :
Niklaus Wirth, Stepwise Refinement के रूप में परिभाषित एक अवधारणा के बारे में लिखते हैं । यह मूल रूप से बताता है कि कैसे आंशिक समाधानों में एक कार्यक्रम को विभाजित किया जाए जिस पर बढ़ाया जा सकता है।
1974 :
यह सबसे पहला कागज़ है जिसे मैंने पाया है कि बारबरा लिस्कॉव द्वारा अमूर्त डेटा प्रकार के शब्द ।
एक अमूर्त डेटा प्रकार सार वस्तुओं के एक वर्ग को परिभाषित करता है जो उन वस्तुओं पर उपलब्ध संचालन द्वारा पूरी तरह से विशेषता है। इसका मतलब यह है कि एक अमूर्त प्रकार को उस प्रकार के लक्षण वर्णन संचालन को परिभाषित करके परिभाषित किया जा सकता है। जब एक प्रोग्रामर एक अमूर्त डेटा ऑब्जेक्ट का उपयोग करता है, तो वह केवल उस व्यवहार से संबंधित होता है, जो उस वस्तु को प्रदर्शित करता है, लेकिन किसी भी विवरण के साथ नहीं कि कार्यान्वयन के माध्यम से उस व्यवहार को कैसे प्राप्त किया जाता है।
यह पेपर एक ऑपरेशन क्लस्टर को भी परिभाषित करता है जो यह निर्दिष्ट करता है कि अब हम इंटरफ़ेस के रूप में क्या जानते हैं ।
दिलचस्प वैज्ञानिक शब्दावली (1996 से कागज):
विरासत : एक अधिक निम्न-स्तरीय तंत्र जिसके द्वारा ऑब्जेक्ट या कक्षाएं व्यवहार या डेटा साझा कर सकते हैं।
उपप्रकार : वैचारिक विशेषज्ञता व्यक्त करता है। इनहेरिटेंस का एक विशिष्ट रूप, जिसे इंटरफ़ेस इनहेरिटेंस भी कहा जाता है ।
अमूर्त सिद्धांतों : चिंता में घटना की बेहतर समझ प्राप्त करने के लिए, अमूर्त के आदेशों की श्रेणीबद्ध रैंकिंग में एक आवेदन डोमेन के हमारे ज्ञान को व्यवस्थित करने की प्रक्रिया।
आंशिक रूप से लागू किए गए सार : अमूर्त जिनकी परिभाषाएँ जानबूझकर अधूरी छोड़ दी गई हैं।
सार वर्ग : ऑब्जेक्ट-ओरिएंटेड सिस्टम में आंशिक रूप से कार्यान्वित वर्ग के लिए विशिष्ट शब्द ।
नॉनस्ट्रिक्ट इनहेरिटेंस : ऑपरेशन को उपवर्गों में पुनर्परिभाषित (या हटाया भी) करने की अनुमति देता है।
सख्त विरासत : व्यवहारिक रूप से संगत विरासत।
निष्कर्ष :
एब्स्ट्रैक्ट क्लास ऑब्जेक्ट-ओरिएंटेड सिस्टम में इस्तेमाल होने वाला सबसे सामान्य शब्द है। ऐसा लगता है कि शुद्ध और गैर-शुद्ध आभासी फ़ंक्शन केवल C ++ से उत्पन्न होते हैं। उदाहरण के लिए, स्ट्रॉस्ट्रुप के साथ यह साक्षात्कार ऐसा लगता है कि उन्होंने शर्तों का आविष्कार किया है। वैज्ञानिक कागजात अधिक सामान्य शब्दावली का उपयोग करते हैं।
आभासी SIMULA से उत्पन्न होता है, जिसके कारण इसका उपयोग व्यापक रूप से किया जाता है, लेकिन यह एक सामान्य शब्द नहीं है। यह पहले से ही कार्यान्वयन विवरण को परिभाषित करता है। विरासत के प्रकारों के संदर्भ में बोलना अधिक उपयुक्त है। गैर आभासी करने के लिए डिफ़ॉल्ट मेल खाती द्वारा सख्त विरासत जबकि, डिफ़ॉल्ट रूप से आभासी डिफ़ॉल्ट मेल खाती द्वारा करने के लिए nonstrict विरासत ।
विकिपीडिया प्रविष्टि को समायोजित करने में कोई दिलचस्पी है ? :)