फ़ंक्शन बनाम विधि: अंतर और तुलना

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

चाबी छीन लेना

  1. एक फ़ंक्शन कोड का एक ब्लॉक है जो एक विशिष्ट कार्य करता है, जबकि एक विधि किसी ऑब्जेक्ट या क्लास से जुड़ा एक फ़ंक्शन है।
  2. फ़ंक्शंस डिफ़ॉल्ट रूप से एक मान लौटाते हैं, जबकि एक विधि अपने कार्यान्वयन के आधार पर एक मान वापस कर सकती है या नहीं।
  3. फ़ंक्शंस किसी विशिष्ट ऑब्जेक्ट या क्लास से जुड़े नहीं होते हैं, जबकि विधियाँ हमेशा किसी ऑब्जेक्ट या क्लास से जुड़ी होती हैं।

फ़ंक्शन बनाम विधि

फ़ंक्शन और मेथड के बीच अंतर यह है कि फ़ंक्शन किसी भी ऑब्जेक्ट से मुक्त होता है, जबकि मेथड स्वयं स्थिर होता है या किसी ऑब्जेक्ट पर होता है। C भाषा में कोई विधियाँ नहीं हैं, इसमें केवल कार्य हैं, जबकि C++ और JAVA में कोई कार्य नहीं हैं, उनमें केवल विधियाँ हैं। किसी विधि के लिए ऑब्जेक्ट-ओरिएंटेड शब्द फ़ंक्शन है।

फ़ंक्शन बनाम विधि

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

जबकि विधि को OOP (ऑब्जेक्ट-ओरिएंटेड प्रोग्रामिंग लैंग्वेज) के रूप में जाना जाता है क्योंकि एक ऑब्जेक्ट में डेटा और व्यवहार शामिल होता है, और इसमें एक इंटरफ़ेस शामिल होता है। इस प्रकार यह निर्धारित किया जा सकता है कि किसी वस्तु का उपयोग किया जा सकता है या नहीं। उदाहरण के लिए - एक "विंडो" एक ऑब्जेक्ट है जिसमें कुछ डेटा और व्यवहार वाले "ओपन" और "क्लोज़" तरीके शामिल होते हैं।

तुलना तालिका

तुलना के पैरामीटरसमारोहविधि
डेटा का आधारकेवल उपलब्ध कराए गए डेटा के साथ काम करता है। यह क्लास से जुड़े सभी डेटा तक पहुंच सकता है।
डाटा प्राइवेसीफ़ंक्शन निजी डेटा, यदि कोई हो, को संचालित या एक्सेस नहीं कर सकता है। विधि कक्षा के निजी डेटा, यदि कोई हो, के साथ काम कर सकती है।
प्रकारफ़ंक्शंस अपने स्वयं के कोड का वर्णन कर सकते हैं। विधियाँ ऑब्जेक्ट-ओरिएंटेड प्रोग्रामिंग भाषा हैं।
भाषाऐं C भाषा में कार्य हैं और कोई विधियाँ नहीं हैं। JAVA और C++ भाषाओं में विधियाँ हैं लेकिन कोई फ़ंक्शन नहीं।
वर्गवर्ग की घोषणा की आवश्यकता नहीं है.विधियों को एक वर्ग के अंदर कोडित किया जाता है।

फ़ंक्शन क्या है?

फ़ंक्शंस निर्देशों का एक समूह है जिन्हें एक विशिष्ट परिणाम प्राप्त करने के लिए एक साथ बंडल किया जाता है। एक फ़ंक्शन किसी विशेष कोड की पुन: प्रयोज्यता को बढ़ा सकता है। किसी फ़ंक्शन में वेरिएबल का उपयोग करके कोई भी मान पारित किया जा सकता है। वेरिएबल्स को दो में वर्गीकृत किया गया है - तर्क और पैरामीटर।

यह भी पढ़ें:  32 बिट बनाम 64 बिट विंडोज 7: अंतर और तुलना

जावा में, हम प्रोग्रामिंग को एक क्लास से शुरू करते हैं जिसके बाद अगली पंक्ति में "पब्लिक स्टेटिक वॉयड मेन ()" लिखा होता है, 'पब्लिक' एक एक्सेस स्पेसिफायर को दर्शाता है और इसका उपयोग यह प्रबंधित करने के लिए किया जाता है कि सामग्री का कौन सा हिस्सा एक्सेस योग्य होना चाहिए।

JAVA और C++ जैसी प्रोग्रामिंग भाषाओं में किसी फ़ंक्शन को परिभाषित करने के लिए कुछ नियमों का पालन किया जाना चाहिए। उदाहरण के लिए, JAVA में, किसी Function को परिभाषित करने के नियम यह हैं कि एक ही हस्ताक्षर वाले कई Functions को घोषित नहीं किया जा सकता है, अर्थात, समान पैरामीटर और संख्याओं वाले कार्यों को दोहराया नहीं जा सकता है। JAVA में एक फ़ंक्शन का उदाहरण संदर्भ के लिए नीचे दिया गया है, Int findMinimum (int num1, int num2, int num3) {If (num1 > num2) return num1; { अन्यथा (num3 > num1) वापसी num3; अन्यथा संख्या 1 लौटाएँ; सी प्रोग्रामिंग भाषा में, फ़ंक्शन दो प्रकार के होते हैं, पूर्वनिर्धारित और उपयोगकर्ता-परिभाषित फ़ंक्शन।

पुट(), गेट्स(), प्रिंटफ(), स्कैनफ() आदि जैसे फ़ंक्शन पूर्वनिर्धारित हैं पुस्तकालय कार्य. उदाहरण के लिए, - printf() फ़ंक्शन का वर्णन किया गया है हेडर फ़ाइल इसलिए, printf() फ़ंक्शन का उपयोग करने के लिए हेडर फ़ाइल को #include का उपयोग करके प्रोग्राम में शामिल किया जाना चाहिए .

किसी प्रोग्राम में उपयोगकर्ता द्वारा बनाए गए फ़ंक्शन को उपयोगकर्ता-परिभाषित फ़ंक्शन के रूप में जाना जाता है। उपयोगकर्ता द्वारा परिभाषित फ़ंक्शन का सिंटैक्स है; रिटर्न_टाइप फ़ंक्शन_नाम (तर्क सूची) { कथनों का सेट - कोड का ब्लॉक }। रिटर्न प्रकार चार, इंट, शून्य आदि जैसे डेटा हो सकता है। तर्क सूची दो रिटर्न-प्रकार डेटा की तुलना करने के लिए है। कोड का ब्लॉक सी भाषा प्रोग्रामिंग स्टेटमेंट का एक समूह है जिसे निष्पादन के दौरान फ़ंक्शन पर कॉल किए जाने पर निष्पादित किया जाएगा।

विधि क्या है?

विधियों को ऑब्जेक्ट-ओरिएंटेड प्रोग्रामिंग भाषाओं के रूप में परिभाषित किया गया है। विधियों को भी तीन प्रकारों में वर्गीकृत किया गया है: इंटरफ़ेस विधि, कंस्ट्रक्टर विधि और कार्यान्वयन विधि।

प्रोग्रामिंग में, एक विधि को इस प्रकार लिखा जाता है; स्ट्रिंग getMyName() {वापसी "डेविना क्लेयर"; } विधि के इस उपरोक्त उदाहरण में, getMyName() विधि हस्ताक्षर है। {वापसी "डेविना क्लेयर"; } मेथड बॉडी है। एक स्ट्रिंग रिटर्न प्रकार है, और रिटर्न "डेविना क्लेयर" है; रिटर्न स्टेटमेंट है.

यह भी पढ़ें:  कपविंग बनाम क्लिपचैम्प: अंतर और तुलना

किसी क्लास के अंदर विधियाँ जोड़ने के लिए, विधि जोड़ें नमस्ते() कक्षा की तरफ; क्लास कार {सार्वजनिक $comp; सार्वजनिक $रंग = 'काला'; सार्वजनिक $hasSunRoof = सत्य; सार्वजनिक फ़ंक्शन हैलो() {वापसी "बीप"; } }परिणाम:- बीप, बीप।

पूरा कार्यक्रम होगा; गूंज $alto -> रंग; // काली प्रतिध्वनि " ”; इको $स्विफ्टडिजायर -> रंग; // काली प्रतिध्वनि " ”; // मान सेट करें $alto -> color = 'red'; $alto -> COMP = "ALTO"; $स्विफ्टडिजायर -> कॉम्प = "स्विफ्टडिजायर"; // फिर से मान प्राप्त करें echo $alto -> color; // लाल प्रतिध्वनि " ”; इको $स्विफ्टडिजायर -> रंग; // काली प्रतिध्वनि " ”; इको $alto -> COMP; // ऑल्टो इको " ”; इको $स्विफ्टडिजायर -> कॉम्प; // स्विफ्टडिजायर इको " ”; // बीप इको प्राप्त करने के लिए तरीकों का उपयोग करें $alto -> hello(); // बीप इको " ”; इको $स्विफ्टडिजायर -> हैलो(); // बीप

कार्य और विधि के बीच मुख्य अंतर

  1. एक फ़ंक्शन को सीधे उसके नाम से बुलाया जाता है, जबकि एक विधि में एक कोड शामिल होता है जिसे ऑब्जेक्ट के नाम से बुलाया जाता है।
  2. एक फ़ंक्शन संचालित डेटा को पास कर सकता है और फिर वापस लौटा सकता है, जबकि एक विधि क्लास में डेटा को संचालित करती है।
  3. एक फ़ंक्शन स्वतंत्र होता है, जबकि एक विधि किसी ऑब्जेक्ट से जुड़ा हुआ फ़ंक्शन होता है।
  4. स्पष्ट डेटा को किसी फ़ंक्शन पर पास कर दिया जाता है, जबकि एक विधि उस ऑब्जेक्ट को पूरी तरह से पास कर देती है जिस पर उसे प्रोग्राम में बुलाया गया था।
  5. एक विधि ऑब्जेक्ट-ओरिएंटेड प्रोग्रामिंग है, जबकि एक फ़ंक्शन में स्टैंडअलोन कार्यक्षमता होती है।
संदर्भ
  1. https://www.sciencedirect.com/science/article/pii/S0096300309010376
  2. https://www.sciencedirect.com/science/article/pii/S0960077905004054

अंतिम अद्यतन: 11 जून, 2023

बिंदु 1
एक अनुरोध?

मैंने आपको मूल्य प्रदान करने के लिए इस ब्लॉग पोस्ट को लिखने में बहुत मेहनत की है। यदि आप इसे सोशल मीडिया पर या अपने मित्रों/परिवार के साथ साझा करने पर विचार करते हैं, तो यह मेरे लिए बहुत उपयोगी होगा। साझा करना है ♥️

"फ़ंक्शन बनाम विधि: अंतर और तुलना" पर 15 विचार

  1. यह आलेख ज्ञानवर्धक है. जावा और C++ में फ़ंक्शंस को परिभाषित करने के नियमों की व्याख्या प्रोग्रामिंग भाषाओं की बारीकियों को स्पष्ट करने में मदद करती है।

    जवाब दें
  2. यह लेख कार्यों और विधियों की भूमिकाओं और विशेषताओं को समझाने का उत्कृष्ट काम करता है। उदाहरण कोड उनके कार्यान्वयन की स्पष्ट समझ प्रदान करते हैं।

    जवाब दें
    • मैं सहमत हूं, विस्तृत विवरण और उदाहरण कार्यों और विधियों की अवधारणाओं को आसानी से समझने योग्य बनाते हैं।

      जवाब दें
  3. लेख अवधारणाओं का एक व्यापक अवलोकन प्रदान करता है। फ़ंक्शंस को परिभाषित करने के लिए जावा और C++ के बीच तुलना से उनके सिंटैक्स और नियमों की स्पष्ट समझ मिलती है।

    जवाब दें
    • बिल्कुल, मुझे विभिन्न प्रोग्रामिंग भाषाओं में फ़ंक्शन को परिभाषित करने के बारे में जानकारी बेहद मूल्यवान लगी। यह हमें यह देखने की अनुमति देता है कि भाषाएँ कार्यों और विधियों के प्रति अपने दृष्टिकोण में कैसे भिन्न हैं।

      जवाब दें
  4. कार्यों और विधियों के बीच अंतर स्पष्ट रूप से रेखांकित किया गया है। तुलना तालिका प्रभावी ढंग से अंतरों का सारांश प्रस्तुत करती है, जिससे इसे समझना आसान हो जाता है।

    जवाब दें
    • मैं इससे अधिक सहमत नहीं हो सका. फ़ंक्शन और विधि विशेषताओं की साथ-साथ तुलना ज्ञानवर्धक है।

      जवाब दें
  5. विभिन्न प्रोग्रामिंग भाषाओं में फ़ंक्शन और विधियाँ कैसे संचालित होती हैं, इसकी विस्तृत व्याख्या उनके महत्व की समग्र समझ देती है।

    जवाब दें
    • मुझे जावा में एक फ़ंक्शन का उदाहरण बहुत जानकारीपूर्ण और प्रासंगिक लगा। लेख कार्यों और विधियों के सार को प्रभावी ढंग से संप्रेषित करता है।

      जवाब दें
    • निश्चित रूप से, लेख प्रोग्रामिंग भाषाओं में कार्यों और विधियों के सार को प्रभावी ढंग से दर्शाता है।

      जवाब दें
  6. विभिन्न प्रोग्रामिंग भाषाओं में कार्यों और विधियों के बीच गहराई से तुलना सॉफ्टवेयर विकास में उनकी भूमिकाओं का एक उत्कृष्ट प्रदर्शन है।

    जवाब दें
  7. लेख प्रभावी ढंग से कार्यों और विधियों के बीच मूलभूत अंतरों का वर्णन करता है। स्पष्ट तुलना तालिका कंप्यूटर प्रोग्रामिंग में दोनों के महत्व पर प्रकाश डालती है।

    जवाब दें
    • मैं सहमत हूं, विस्तृत विवरण विभिन्न प्रोग्रामिंग भाषाओं में कार्यों और विधियों की भूमिकाओं को समझने में मदद करता है।

      जवाब दें
    • हाँ, मुझे भी यह जानकारीपूर्ण लगा। उदाहरण कोड यह बताने का एक शानदार तरीका है कि विभिन्न प्रोग्रामिंग भाषाओं में कार्यों और विधियों को कैसे कार्यान्वित किया जाता है।

      जवाब दें
  8. यह आलेख कंप्यूटर प्रोग्रामिंग में कार्यों और विधियों को समझने के लिए एक बेहतरीन संसाधन है। विभिन्न भाषाओं में दिए गए उदाहरण विशेष रूप से मूल्यवान हैं।

    जवाब दें

एक टिप्पणी छोड़ दो

क्या आप इस लेख को बाद के लिए सहेजना चाहते हैं? अपने लेख बॉक्स में सहेजने के लिए नीचे दाएं कोने में दिल पर क्लिक करें!