कार्यात्मक प्रोग्रामिंग एक्स ऑब्जेक्ट-ओरिएंटेड प्रोग्रामिंग

Dec 11 2022
हमारे पास कोडिंग की कई शैलियाँ हैं जिन्हें प्रतिमान कहा जाता है। कार्यात्मक प्रोग्रामिंग (FP) और ऑब्जेक्ट-ओरिएंटेड प्रोग्रामिंग (OOP) उनमें से एक हैं।

हमारे पास कोडिंग की कई शैलियाँ हैं जिन्हें प्रतिमान के रूप में जाना जाता है । कार्यात्मक प्रोग्रामिंग (FP) और ऑब्जेक्ट-ओरिएंटेड प्रोग्रामिंग (OOP) उनमें से एक हैं। ये दो कोडिंग शैलियाँ सबसे प्रसिद्ध हैं और निश्चित रूप से एक प्रोग्रामर के रूप में आपके जीवन में एक बार, आपको उनके बीच के अंतर का वर्णन करना होगा। तो चलते हैं!

कार्यात्मक प्रोग्रामिंग

यहाँ हम बहुत सारे Functions और Variables का उपयोग करते हैं। FP में, हम डेटा और कार्यात्मकताओं को अलग रखते हैं और डेटा को फ़ंक्शन में तभी पास करते हैं जब हम कुछ गणना करना चाहते हैं। यही है, हम कोड में कहीं और इन कार्यों से लौटाए गए मूल्यों का उपयोग करते हैं।

निम्नलिखित हमारे पास कोड की FP शैली दिखाने वाला एक उदाहरण है। ध्यान दें कि हम फ़ंक्शन को डेटा और फ़ंक्शन से वापस आने वाले मान से अलग करते हैं जिसका उपयोग हम दर्शक को सांत्वना देने के लिए करते हैं।

function getArea(a, b) {
    return a * b
}
var a = 2;
var b = 5;
var area = getArea(a, b);

console.log(area); // <= Use Here!

यहां हम डेटा और कार्यात्मकताओं को वस्तुओं के अंदर गुणों और विधियों के रूप में समूहित करते हैं (यही कारण है कि "ऑब्जेक्ट-ओरिएंटेड" नाम)। जब हम वास्तविक जीवन की वस्तुओं के मॉडल बनाना चाहते हैं तो यह बहुत मददगार होता है क्योंकि हम उन गुणों और डेटा को समूहित कर सकते हैं जो एक साथ तार्किक समझ में आते हैं।

अब, देखते हैं कि कोड की OOP शैली का उपयोग करके कुत्ता कैसे बनाया जाता है:

var dog = {
    legs: 4,
    sleepy: true,
    bark: function(){
      if(this.sleepy){
        console.log('Woof, Woof');
      } else {
         console.log('Zzzzz');
      }
    },
    nap: function() {
        this.sleepy = false
    }
}
console.log(dog.sleepy) // true
dog.bark(); // Woof, Woof
dog.nap();
console.log(dog.sleepy) // false
dog.bark(); //Zzzzz

कार्यात्मक प्रोग्रामिंग एक्स ऑब्जेक्ट-ओरिएंटेड प्रोग्रामिंग

बेशक, इन दो अलग-अलग शैलियों में बहुत सारी अवधारणाएं और सिद्धांत हैं, लेकिन यहां मैंने सिर्फ उनके बीच के मुख्य अंतर पर ध्यान केंद्रित किया है ताकि आप एक अवलोकन कर सकें और इसके बारे में पूछे जाने पर इसका उत्तर देने के लिए तैयार रहें।

फिर से शुरू में, हम कह सकते हैं कि कार्यात्मक प्रोग्रामिंग प्रतिमान डेटा और कार्यक्षमता को अलग रखकर काम करता है और ऑब्जेक्ट-ओरिएंटेड प्रोग्रामिंग डेटा और कार्यक्षमता को सार्थक वस्तुओं में समूहीकृत करके काम करता है।

संदर्भ

प्रोफेशनल सर्टिफिकेट मेटा फ्रंटेंड डेवलपर — (कोर्स 2) — कौरसेरा पर उपलब्ध है।