एक्सप्लोरेटरी प्रोग्रामिंग: Difference between revisions

From Vigyanwiki
No edit summary
No edit summary
Line 1: Line 1:
[[कार्यान्वयन (कंप्यूटर विज्ञान)]] | कार्यान्वयन (प्रोग्रामिंग) के विपरीत खोजपूर्ण प्रोग्रामिंग, [[सॉफ्टवेयर इंजीनियरिंग]] चक्र का एक महत्वपूर्ण हिस्सा है: जब कोई डोमेन बहुत अच्छी तरह से समझा नहीं जाता है या ओपन-एंडेड नहीं होता है, या यह स्पष्ट नहीं है कि कार्यान्वयन के लिए एल्गोरिदम और डेटा संरचनाओं की क्या आवश्यकता हो सकती है, तो संपादन-संकलन-रन-डीबग चक्र की सामान्य बाधाओं से गुज़रने के बिना किसी प्रोग्राम को इंटरैक्टिव रूप से विकसित करने और डीबग करने में सक्षम होना उपयोगी होता है। [[एपीएल (प्रोग्रामिंग भाषा)]], [[सेसिल (प्रोग्रामिंग भाषा)]], सी शार्प (प्रोग्रामिंग भाषा)|सी#, जैसी भाषाएँ<ref>through  [[Microsoft Visual Studio]]</ref> [[डायलन (प्रोग्रामिंग भाषा)]], फैक्टर (प्रोग्रामिंग भाषा), [[फोर्थ (प्रोग्रामिंग भाषा)]], एफ शार्प (प्रोग्रामिंग भाषा)|एफ#, [[जे (प्रोग्रामिंग भाषा)]], [[जावा (प्रोग्रामिंग भाषा)]],<ref>through its [[JShell]] [[read-eval-print loop]] interpreter introduced in version 9</ref> [[जूलिया (प्रोग्रामिंग भाषा)]], [[लिस्प (प्रोग्रामिंग भाषा)]], [[मेथेमेटिका]], [[ बूंदा बांदी ]], [[ओज़ (प्रोग्रामिंग भाषा)]], [[प्रोलॉग]], [[पायथन (प्रोग्रामिंग भाषा)]], आरईबीओएल, [[पर्ल]], [[आर (प्रोग्रामिंग भाषा)]], [[रूबी (प्रोग्रामिंग भाषा)]], [[स्काला (प्रोग्रामिंग भाषा)]], सेल्फ (प्रोग्रामिंग भाषा), स्मॉलटॉक, [[ टी.सी.एल ]] और [[जावास्क्रिप्ट]], अक्सर एक एकीकृत विकास वातावरण के संयोजन में, अन्तरक्रियाशीलता, गतिशीलता और विस्तारशीलता के माध्यम से खोजपूर्ण प्रोग्रामिंग के लिए सहायता प्रदान करते हैं।
[[कार्यान्वयन (कंप्यूटर विज्ञान)|इम्प्लीमेंटेशन (प्रोग्रामिंग)]] के विपरीत इक्स्प्लोरटोरी प्रोग्रामिंग, [[सॉफ्टवेयर इंजीनियरिंग]] चक्र का महत्वपूर्ण हिस्सा है: जब कोई डोमेन बहुत अच्छी तरह से समझा नहीं जाता है या ओपन-एंडेड नहीं होता है, या यह स्पष्ट नहीं है कि इम्प्लीमेंटेशन के लिए एल्गोरिदम और डेटा संरचनाओं की क्या आवश्यकता हो सकती है, तो संपादन-संकलन-रन- दोषमार्जन चक्र की सामान्य बाधाओं से गुज़रे बिना किसी प्रोग्राम को अंतःक्रियात्मक रूप से विकसित करने और दोषमार्जन करने में सक्षम होना उपयोगी होता है। [[एपीएल (प्रोग्रामिंग भाषा)|APL(प्रोग्रामिंग भाषा)]], [[सेसिल (प्रोग्रामिंग भाषा)|सेसिल(प्रोग्रामिंग भाषा)]], C शार्प (प्रोग्रामिंग भाषा), [[डायलन (प्रोग्रामिंग भाषा)]], फैक्टर (प्रोग्रामिंग भाषा), [[फोर्थ (प्रोग्रामिंग भाषा)]], F शार्प (प्रोग्रामिंग भाषा), J [[जे (प्रोग्रामिंग भाषा)|(प्रोग्रामिंग भाषा)]], [[जावा (प्रोग्रामिंग भाषा)]],<ref>through its [[JShell]] [[read-eval-print loop]] interpreter introduced in version 9</ref> [[जूलिया (प्रोग्रामिंग भाषा)]], [[लिस्प (प्रोग्रामिंग भाषा)]], [[मेथेमेटिका]], [[ओज़ (प्रोग्रामिंग भाषा)]], [[प्रोलॉग]], [[पायथन (प्रोग्रामिंग भाषा)]], REBOL, [[पर्ल]], [[आर (प्रोग्रामिंग भाषा)]], [[रूबी (प्रोग्रामिंग भाषा)]], [[स्काला (प्रोग्रामिंग भाषा)]], सेल्फ (प्रोग्रामिंग भाषा), स्मॉलटॉक, TCL और [[जावास्क्रिप्ट]], जैसी भाषाएँ<ref>through  [[Microsoft Visual Studio]]</ref> प्रायः एकीकृत विकास वातावरण के संयोजन में, अन्तरक्रियाशीलता, गतिशीलता और विस्तारशीलता के माध्यम से इक्स्प्लोरटोरी प्रोग्रामिंग के लिए सहायता प्रदान करते हैं।


==औपचारिक विशिष्टता बनाम खोजपूर्ण प्रोग्रामिंग==
==औपचारिक विनिर्देशन बनाम इक्स्प्लोरटोरी प्रोग्रामिंग==


कुछ सॉफ़्टवेयर विकास परियोजनाओं के लिए, आवश्यकताओं का विश्लेषण और औपचारिक [[विनिर्देश]]न करना उचित है। अन्य सॉफ्टवेयर विकास परियोजनाओं के लिए, यह समझ में आता है कि डेवलपर्स को प्रौद्योगिकी के साथ प्रयोग करने दें और खोजपूर्ण प्रोग्रामिंग के आधार पर सॉफ्टवेयर के विनिर्देशों को विकसित होने दें।
कुछ सॉफ़्टवेयर विकास परियोजनाओं के लिए, आवश्यकताओं का विश्लेषण और औपचारिक [[विनिर्देश]]न करना उचित है। अन्य सॉफ्टवेयर विकास परियोजनाओं के लिए, यह समझ में आता है कि डेवलपर्स को प्रौद्योगिकी के साथ प्रयोग करने दें और इक्स्प्लोरटोरी प्रोग्रामिंग के आधार पर सॉफ्टवेयर के विनिर्देशों को विकसित होने दें।


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


==यह भी देखें==
==यह भी देखें==

Revision as of 18:57, 7 August 2023

इम्प्लीमेंटेशन (प्रोग्रामिंग) के विपरीत इक्स्प्लोरटोरी प्रोग्रामिंग, सॉफ्टवेयर इंजीनियरिंग चक्र का महत्वपूर्ण हिस्सा है: जब कोई डोमेन बहुत अच्छी तरह से समझा नहीं जाता है या ओपन-एंडेड नहीं होता है, या यह स्पष्ट नहीं है कि इम्प्लीमेंटेशन के लिए एल्गोरिदम और डेटा संरचनाओं की क्या आवश्यकता हो सकती है, तो संपादन-संकलन-रन- दोषमार्जन चक्र की सामान्य बाधाओं से गुज़रे बिना किसी प्रोग्राम को अंतःक्रियात्मक रूप से विकसित करने और दोषमार्जन करने में सक्षम होना उपयोगी होता है। APL(प्रोग्रामिंग भाषा), सेसिल(प्रोग्रामिंग भाषा), C शार्प (प्रोग्रामिंग भाषा), डायलन (प्रोग्रामिंग भाषा), फैक्टर (प्रोग्रामिंग भाषा), फोर्थ (प्रोग्रामिंग भाषा), F शार्प (प्रोग्रामिंग भाषा), J (प्रोग्रामिंग भाषा), जावा (प्रोग्रामिंग भाषा),[1] जूलिया (प्रोग्रामिंग भाषा), लिस्प (प्रोग्रामिंग भाषा), मेथेमेटिका, ओज़ (प्रोग्रामिंग भाषा), प्रोलॉग, पायथन (प्रोग्रामिंग भाषा), REBOL, पर्ल, आर (प्रोग्रामिंग भाषा), रूबी (प्रोग्रामिंग भाषा), स्काला (प्रोग्रामिंग भाषा), सेल्फ (प्रोग्रामिंग भाषा), स्मॉलटॉक, TCL और जावास्क्रिप्ट, जैसी भाषाएँ[2] प्रायः एकीकृत विकास वातावरण के संयोजन में, अन्तरक्रियाशीलता, गतिशीलता और विस्तारशीलता के माध्यम से इक्स्प्लोरटोरी प्रोग्रामिंग के लिए सहायता प्रदान करते हैं।

औपचारिक विनिर्देशन बनाम इक्स्प्लोरटोरी प्रोग्रामिंग

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

ब्रेडबोर्डिंग से समानता

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

यह भी देखें

टिप्पणियाँ

  1. through its JShell read-eval-print loop interpreter introduced in version 9
  2. through Microsoft Visual Studio

संदर्भ

  • Rajib Mall (1 August 2004). Fundamentals of Software Engineering. PHI Learning Pvt. Ltd. p. 32. ISBN 978-81-203-2445-9.'''