मुख्य अंतर - घोषणात्मक बनाम अनिवार्य प्रोग्रामिंग
घोषणात्मक और अनिवार्य प्रोग्रामिंग दो सामान्य प्रोग्रामिंग प्रतिमान हैं। घोषणात्मक और अनिवार्य प्रोग्रामिंग के बीच महत्वपूर्ण अंतर यह है कि घोषणात्मक प्रोग्रामिंग इस बात पर ध्यान केंद्रित करती है कि कार्यक्रम को क्या हासिल करना चाहिए जबकि इम्पीरेटिव प्रोग्रामिंग इस बात पर केंद्रित है कि कार्यक्रम को परिणाम कैसे प्राप्त करना चाहिए।
किसी प्रोग्रामिंग भाषा को फीचर के आधार पर वर्गीकृत करने के लिए एक प्रोग्रामिंग प्रतिमान का उपयोग किया जाता है। यह किसी विशेष समस्या को हल करने के लिए एक निश्चित पैटर्न या शैली का पालन करने की भी अनुमति देता है।
डिक्लेरेटिव प्रोग्रामिंग क्या है?
डिक्लेरेटिव प्रोग्रामिंग को वास्तविक दुनिया के परिदृश्य का उपयोग करके समझाया जा सकता है। मान लें कि उपयोगकर्ता को नए ईमेल की जांच करने की आवश्यकता है। एक तरीका इनबॉक्स सूचनाओं को सक्षम करना है। उपयोगकर्ता को केवल एक बार सूचनाओं को सक्षम करना होता है, और हर बार जब कोई नया ईमेल आता है, तो उसे स्वचालित रूप से एक सूचना मिलती है। घोषणात्मक प्रोग्रामिंग उसी के समान है। यह सरलता प्रदान करता है। घोषणात्मक प्रोग्रामिंग व्यक्त करता है कि आवश्यक परिणाम क्या है। यह नियंत्रण प्रवाह का वर्णन किए बिना गणना के तर्क की व्याख्या करता है।
चित्र 01: प्रोग्रामिंग प्रतिमान
डिक्लेरेटिव प्रोग्रामिंग का एक उदाहरण इस प्रकार है। यह एक सरणी की संख्याओं को एक स्थिरांक से गुणा करना और उन्हें एक नए सरणी में संग्रहीत करना है।
वर संख्याएं=[1, 2, 3];
var newnumbers=number.map(function(number){
रिटर्न नंबर5;
});
Console.log(newnumbers);
उपरोक्त उदाहरण में, 'मानचित्र' सरणी में प्रत्येक आइटम को पुनरावृत्त करने और प्रत्येक आइटम के लिए कॉल बैक फ़ंक्शन को लागू करने और वापसी मान को नए सरणी में संग्रहीत करने के निर्देश देता है। यह आउटपुट 5, 10, 15 देगा। इस कार्यक्रम में, मैप फ़ंक्शन का उपयोग करके संख्याओं को 5 से गुणा करने का मुख्य उद्देश्य पूरा किया जाता है। यह प्रत्येक तत्व के माध्यम से जाएगा और मूल्यों को नई सरणी में गणना और संग्रहीत करने के लिए कॉल बैक फ़ंक्शन का उपयोग करेगा। सभी चरणों को प्रदान करने की आवश्यकता नहीं है। मुख्य ध्यान इस बात पर दिया जाता है कि क्या हासिल किया जाना चाहिए।
अनिवार्य प्रोग्रामिंग क्या है?
अनिवार्य प्रोग्रामिंग को पहले की तरह वास्तविक दुनिया के परिदृश्य का उपयोग करके समझाया जा सकता है। नए ईमेल की जांच करने के लिए, उपयोगकर्ता जीमेल में लॉग इन कर सकता है और यह जांचने के लिए पेज को रीफ्रेश कर सकता है कि उसे नए ईमेल मिले या नहीं।यह अनिवार्य प्रोग्रामिंग के समान है। यह परिणाम प्राप्त करने के लिए शामिल प्रत्येक चरण की व्याख्या करता है। यह प्रोग्राम स्टेट में बदलाव को व्यक्त करने के लिए स्टेटमेंट्स का उपयोग करता है।
अनिवार्य प्रोग्रामिंग में एक स्थिरांक के साथ सरणियों के तत्वों को गुणा करना और मूल्यों को एक नए सरणी में संग्रहीत करना इस प्रकार है।
वर संख्याएं=[1, 2, 3];
var newnumbers=;
for(int i=0; i< number.length; i++) {
newnumbers.push(numbers5);
}
Console.log(newnumbers);
उपरोक्त उदाहरण में, संख्याएं एक सरणी है। लूप से गुजरते समय, प्रत्येक संख्या को 5 से गुणा किया जाता है और न्यूनंबर सरणी में जोड़ा जाता है। लूप के अंत के बाद, नए नंबरों की सामग्री प्रिंट होगी जो 5, 10, 15. हैं।
यह देखा जा सकता है कि अनिवार्य शैली कार्य को प्राप्त करने के लिए सभी कदम प्रदान करती है। यह व्यक्त करता है कि 'i' काउंटर वेरिएबल का उपयोग करके सरणी के माध्यम से कैसे पुनरावृति करना है, लूप से बाहर निकलने से पहले कितनी बार पुनरावृति करना है और परिकलित मानों को नए सरणियों आदि में कैसे सम्मिलित करना है।
घोषणात्मक और अनिवार्य प्रोग्रामिंग का उपयोग करके उसी समस्या को हल किया गया था।
घोषणात्मक और अनिवार्य प्रोग्रामिंग के बीच अंतर क्या है?
घोषणात्मक बनाम अनिवार्य प्रोग्रामिंग |
|
डिक्लेरेटिव प्रोग्रामिंग एक प्रोग्रामिंग प्रतिमान है जो एक गणना के तर्क को उसके नियंत्रण प्रवाह का वर्णन किए बिना व्यक्त करता है। | अनिवार्य प्रोग्रामिंग एक प्रोग्रामिंग प्रतिमान है जो उन बयानों का उपयोग करता है जो प्रोग्राम की स्थिति को बदलते हैं। |
मुख्य फोकस | |
डिक्लेरेटिव प्रोग्रामिंग इस बात पर केंद्रित है कि प्रोग्राम को क्या हासिल करना चाहिए। | अनिवार्य प्रोग्रामिंग इस बात पर केंद्रित है कि कार्यक्रम को परिणाम कैसे प्राप्त करना चाहिए। |
लचीलापन | |
डिक्लेरेटिव प्रोग्रामिंग कम लचीलापन प्रदान करती है। | अनिवार्य प्रोग्रामिंग अधिक लचीलापन प्रदान करता है। |
जटिलता | |
डिक्लेरेटिव प्रोग्रामिंग प्रोग्राम को सरल बनाती है। | अनिवार्य प्रोग्रामिंग कार्यक्रम की जटिलता को बढ़ा सकता है। |
वर्गीकरण | |
कार्यात्मक, तर्क, क्वेरी प्रोग्रामिंग घोषणात्मक प्रोग्रामिंग में आती है। | प्रक्रियात्मक और वस्तु उन्मुख प्रोग्रामिंग अनिवार्य प्रोग्रामिंग में आती है। |
सारांश – घोषणात्मक बनाम अनिवार्य प्रोग्रामिंग
इस आलेख में दो प्रमुख प्रोग्रामिंग प्रतिमानों के बीच अंतर पर चर्चा की गई है, जो घोषणात्मक और अनिवार्य प्रोग्रामिंग हैं।घोषणात्मक और अनिवार्य प्रोग्रामिंग के बीच का अंतर यह है कि घोषणात्मक प्रोग्रामिंग इस बात पर ध्यान केंद्रित करती है कि कार्यक्रम को क्या हासिल करना चाहिए जबकि इम्पीरेटिव प्रोग्रामिंग इस बात पर केंद्रित है कि कार्यक्रम को परिणाम कैसे प्राप्त करना चाहिए।