Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> PHP

PHP में एब्स्ट्रैक्शन और एनकैप्सुलेशन के बीच अंतर समझाया गया

PHP5 ने पिछले संस्करण के साथ ऑब्जेक्ट-ओरिएंटेड प्रोग्रामिंग दृष्टिकोण जोड़ा, जिसका उपयोग रियल-टाइम PHP एप्लिकेशन में कोड को पुन: प्रयोज्य बनाने के लिए किया जाता है।

ऑब्जेक्ट-ओरिएंटेड मॉडल की कुछ अवधारणाएं हैं: क्लास, ऑब्जेक्ट, एनकैप्सुलेशन, पॉलीमॉर्फिज्म, एब्स्ट्रैक्ट और फाइनल क्लासेज, और मेथड्स, इंटरफेसेस और इनहेरिटेंस, आदि...

यहां हम एब्स्ट्रैक्शन और एनकैप्सुलेशन के बीच बुनियादी अंतर पर चर्चा करते हैं।

एनकैप्सुलेशन:

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


आइए एब्स्ट्रैक्शन पर चर्चा करें।

एब्स्ट्रैक्शन:

  • बैकग्राउंड विवरण शामिल किए बिना आवश्यक सुविधाओं का प्रतिनिधित्व करने की संरचना को एब्स्ट्रैक्शन के रूप में निर्दिष्ट किया जाता है।
  • एब्स्ट्रैक्शन एंड-यूजर से इम्प्लीमेंटेशन विवरण छिपाने और केवल उपयोगकर्ताओं को कार्यक्षमता प्रदर्शित करने की तकनीक है।
  • एब्स्ट्रैक्शन का उपयोग क्लासेज के साथ पॉलीमॉर्फिक विचारों को निष्पादित करने के लिए किया जाता है यानी एब्स्ट्रैक्शन के साथ हम केवल क्लास के अंदर मेथड्स घोषित कर सकते हैं। आमतौर पर, एक अन्य डेराइव्ड क्लास का उपयोग उन्हीं मेथड्स का वर्णन करने के लिए किया जाता है।
  • एक एब्स्ट्रैक्ट क्लास को इंस्टेंटिएट नहीं किया जा सकता इसलिए एंड-यूजर्स सीधे इसे एक्सेस नहीं कर सकते।
  • इसका उपयोग एप्लिकेशन की जटिलता को कम करने और कोड को एप्लिकेशन में पुन: प्रयोज्य बनाने के लिए किया जाता है।
  1. - C# में क्लास और स्ट्रक्चर में अंतर

    क्लास और स्ट्रक्चर के बीच अंतर करने के लिए, हमें पहले यह समझना होगा कि डेटा को धारण करने और परिभाषित करने के संदर्भ में दोनों स्ट्रक्चर और क्लास समतुल्य प्रतीत होते हैं। ये दोनों अपने डेटा सदस्यों में कुछ डिफ़ॉल्ट मानों को परिभाषित और धारण कर सकते हैं। लेकिन यदि हम इसे इस संदर्भ से परे मानते हैं तो

  1. - C# में एब्स्ट्रैक्ट क्लास बनाम इंटरफेस: अंतर

    दोनों कॉन्ट्रैक्ट परिभाषित करते हैं, लेकिन अलग-अलग उद्देश्यों के लिए। तुलना तालिका विशेषताएब्स्ट्रैक्ट क्लासइंटरफेस विरासतकेवल एक (सिंगल इनहेरिटेंस)एकाधिक (मल्टीपल इम्प्लीमेंटेशन) मेंबर फील्ड्सहाँ (इंस्टेंस/स्टैटिक फील्ड्स)नहीं (केवल C# 8.0+ में डिफ़ॉल्ट इम्प्लीमेंटेशन) एक्सेस मॉडिफायर्ससभी (p

  1. - जावा में Class और Interface में अंतर

    इस पोस्ट में, हम जावा में क्लास और इंटरफेस के बीच अंतर को समझेंगे।Classयह बताता है कि एक ऑब्जेक्ट में कौन से गुण और व्यवहार होने चाहिए।इसमें एब्स्ट्रैक्ट मेथड्स के साथ-साथ सामान्य मेथड्स भी हो सकते हैं।इसे बनाने की कीवर्ड class है।इसे इंस्टेंटिएट किया जा सकता है।यह मल्टीपल इनहेरिटेंस को सपोर्ट नहीं