Abstraction in Hindi – एब्स्ट्रेक्शन क्या है? इसके प्रकार

इस लेख "What is Abstraction in Hindi" जानिए एब्स्ट्रेक्शन क्या है? एब्स्ट्रेक्शन के प्रकार, इसके लाभ और हानि आदि Abstraction in OOPs.

Abstraction in Hindi: एब्सट्रैक्शन ऑब्जेक्ट-ओरिएंटेड प्रोग्रामिंग (OOP) की मूल अवधारणाओं में से एक है। Abstraction एक ऐप्लिकेशन घटक बनाने के लिए एक मॉडल को परिभाषित करता है। एब्सट्रैक्शन का कार्यान्वयन भाषा-विशिष्ट सुविधाओं और प्रक्रियाओं पर निर्भर करता है।

मूल रूप से, एब्सट्रैक्शन का मुख्य उद्देश्य उपयोगकर्ताओं से अनावश्यक विवरण (unnecessary details) छिपाना है। इस लेख में, आप समझने जा रहे हैं कि प्रोग्रामिंग में एब्स्ट्रेक्शन क्या है (What is Abstraction in Hindi)? और इसके प्रकार, फायदे और इसका उपयोग कैसे करें आदि।

नोट: Abstraction को अच्छी तरह से समझने के लिए पहले प्रोग्रामिंग को समझें और ऑब्जेक्ट-ओरिएंटेड प्रोग्रामिंग क्या है, इनहेरिटेंस और पॉलीमोरफ़िज्म क्या है को समझें।

एब्स्ट्रेक्शन क्या है (What is Abstraction in Hindi)

What is Abstraction in Hindi - एब्स्ट्रेक्शन क्या है

एब्स्ट्रेक्शनदिखाता है” केवल आवश्यक attributes और “छुपाता है” अनावश्यक जानकारी। एब्स्ट्रक्शन एक बड़े पूल से डेटा का चयन कर रहा है ताकि उपयोगकर्ता को ऑब्जेक्ट का केवल प्रासंगिक विवरण दिखाया जा सके।

यह प्रोग्रामिंग जटिलता और प्रयासों को कम करने में मदद करता है। यह ऑब्जेक्ट-ओरिएंटेड प्रोग्रामिंग की सबसे महत्वपूर्ण अवधारणाओं में से एक है।

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

Abstraction में, हम कोड जटिलताओं को छिपाने के लिए सार abstract classes और इंटरफेस का उपयोग करते हैं। आपकी Car एब्स्ट्रक्शन का एक बेहतरीन उदाहरण है। आप चाबी घुमाकर या स्टार्ट बटन दबाकर कार शुरू कर सकते हैं। आपको यह जानने की ज़रूरत नहीं है कि इंजन कैसे शुरू हो रहा है, या आपकी कार के सभी घटक क्या हैं।

OOPs में एब्स्ट्रेक्शन क्या है (Abstraction in OOPS)

एब्स्ट्रेक्शन OOPs की एक विशेषता है। इसका उपयोग उपयोगकर्ता से अनावश्यक जानकारी या डेटा को छिपाने के लिए किया जाता है लेकिन उपयोगकर्ता के लिए उपयोगी आवश्यक डेटा को दिखाता है। इसे इंटरफ़ेस और abstract class का उपयोग करके प्राप्त किया जा सकता है।

ऑब्जेक्ट ऑब्जेक्ट-ओरिएंटेड प्रोग्रामिंग के बिल्डिंग ब्लॉक्स हैं। एक object में कुछ गुण और विधियाँ होती हैं। हम एक्सेस संशोधक के माध्यम से उन्हें बाहरी दुनिया से छुपा सकते हैं। हम केवल आवश्यक कार्यों और गुणों के लिए अन्य कार्यक्रमों तक पहुंच प्रदान कर सकते हैं। OOPs में abstraction को लागू करने की यह सामान्य प्रक्रिया है।

एब्स्ट्रेक्शन का उदाहरण (Example of Abstraction)

Abstraction के उपयोग को समझने के लिए, यहाँ C++ प्रोग्रामिंग कोड है:

#include <iostream> 
using namespace std; 

class Summation { 
   private: 
      // private variables 
      int myNum1, myNum2, myNum3 
   public: 
      void sum(int inNum1, int inNum2) 
      { 
          myNum1 = inNum1; 
          myNum2 = inNum2; 
          myNum3 = myNum1 + myNum2; 
          cout << "Sum of the two number is : " << myNum3< <endl; 
      } 
}; 
int main() 
{ 
    Summation mySum; 
    mySum.sum(5, 4); 
    return 0; 
} 

इस मामले में, variable myNum1, myNum2, और myNum3 निजी (private) हैं, इस प्रकार class सारांश के अलावा किसी भी कोड के लिए पहुंच योग्य नहीं है।

इस उदाहरण में, वैरिएबल को योग पद्धति के तर्कों के रूप में पास किए गए मानों पर सेट किया गया है। यह एक बहुत ही सही उदाहरण नहीं है – अक्सर मूल्यों को इस तरह इस्तेमाल किए जाने से ठीक पहले सेट नहीं किया जाएगा, लेकिन यह कार्यान्वयन की वास्तविकता को दर्शाता है।

output:

Sum of the two number is: 9 

एब्स्ट्रेक्शन के प्रकार (Types of Abstraction)

एब्स्ट्रेक्शन के प्रकार (Types of Abstraction)

एब्स्ट्रेक्शन दो प्रकार के होते हैं:

  1. डेटा एब्स्ट्रेक्शन (Data Abstraction)
  2. प्रोसेस एब्स्ट्रेक्शन (Process Abstraction)

आइए इन दोनो प्रकार के एब्स्ट्रेक्शन को अच्छी तरह से समझते है –

डेटा एब्स्ट्रेक्शन (Data Abstraction)

डेटा एब्स्ट्रेक्शन बाहरी दुनिया को केवल आवश्यक जानकारी प्रदान करने और उनकी background के विवरण को छिपाने, यानी विवरण प्रस्तुत किए बिना कार्यक्रम में आवश्यक जानकारी का प्रतिनिधित्व करने के लिए संदर्भित करता है।

डेटा एब्स्ट्रेक्शन (Data Abstraction in Hindi)

उदाहरण के लिएCell phone का उपयोग करते समय, आप यह पता लगा सकते हैं कि incoming calls का उत्तर कैसे दिया जाए और टेक्स्ट संदेशों का उत्तर कैसे दिया जाए। डेटा डेटा एब्स्ट्रेक्शन के लिए धन्यवाद, आप यह नहीं बता सकते कि फोन कैसे सिग्नल ट्रांसमिट करता है। डेटा एब्स्ट्रेक्शन का उद्देश्य किसी उपकरण के केवल आवश्यक तत्वों को उजागर करना है।

प्रोसेस एब्स्ट्रेक्शन (Process Abstraction)

एब्स्ट्रेक्शन की प्रक्रिया, एक प्रोग्रामर जटिलता को कम करने और दक्षता बढ़ाने के लिए किसी object के बारे में प्रासंगिक (relevant) डेटा को छोड़कर सभी को छुपाता है।

प्रोसेस एब्स्ट्रेक्शन (Process Abstraction)

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

एब्स्ट्रेक्शन के लाभ (Advantages of Abstraction)

यहाँ एब्स्ट्रेक्शन के सबसे महत्वपूर्ण लाभ (फायदे) हैं:

  1. एब्स्ट्रेक्शन चीजों को आसान बनाती है
  2. यह डिज़ाइन स्तर पर समस्या का समाधान करता है।
  3. एब्स्ट्रेक्शन चीजों को लागू करने में आसान बनाता है।
  4. यह ट्रिकी कोड को कई बार लिखने से बच सकता है।
  5. एब्स्ट्रक्शन बाहरी देख पर केंद्रित करता है।
  6. यह जानकारी प्राप्त करने की प्रक्रिया है।
  7. इसे abstract classes और इंटरफेस का उपयोग करके लागू किया जा सकता है।

एब्स्ट्रेक्शन के हानि (Disadvantages of Abstraction)

प्रोग्रामिंग में एब्स्ट्रेक्शन के कुछ नुकसान हैं:

  • सबसे पहले, आप जितनी अधिक abstraction layers जोड़ते हैं, उतनी ही कम कुशलता से अंतिम कार्यक्रम चलेगा। यह उच्च भाषाओं की interpret और अंततः compile होने के कारण है।
  • इसलिए ऐसे और भी कदम हैं जिन्हें कोड से लेकर वास्तविक रनिंग प्रोग्राम तक ले जाना है। और ये सभी रूपांतरण और व्याख्या कचरा और अनावश्यक कोड जोड़ती है।
  • Interpreted भाषाओं के लिए, यह हर बार चलने वाले प्रोग्राम को फ्लाई पर संकलित करने का समय भी जोड़ता है।

निष्कर्ष

एब्स्ट्रेक्शन का उपयोग background details या डेटा के बारे में किसी भी अनावश्यक कार्यान्वयन को छिपाने के लिए किया जाता है ताकि उपयोगकर्ता केवल आवश्यक जानकारी देख सकें। यह OOPs की सबसे महत्वपूर्ण और आवश्यक विशेषताओं में से एक है। पूर्व-निर्धारित कार्य डेटा अमूर्तता के समान हैं।

मुझे उम्मीद है कि यह लेख “Abstraction in Hindi” आपको उदाहरण के साथ एब्स्ट्रेक्शन क्या है, विभिन्न प्रकार के एब्स्ट्रेक्शन, इसके फायदे और नुकसान आदि को समझने में मदद किया हैं।

पिछला लेखStructure in C in Hindi – सी स्ट्रक्चर क्या है? पूरी जानकारी
अगला लेखHTML editor in Hindi – Best HTML Code Editors 2023
वह एक पेशेवर वेब और ऐप डेवलपर और भारतीय ब्लॉगर हैं। वह लोगों की मदद करना और उनका मार्गदर्शन करना पसंद करते हैं। इसलिए वह इस ब्लॉग "ट्यूटोरियल इन हिंदी" में अपना ज्ञान हिंदी भाषा में साझा करते हैं। अगर आपको यह पोस्ट मददगार लगे तो इसे शेयर जरूर करें।

कोई जवाब दें

कृपया अपनी टिप्पणी दर्ज करें!
कृपया अपना नाम यहाँ दर्ज करें

fifteen + eleven =