हेल्लो दोस्तों आज के इस पोस्ट में आपको C++ Abstraction in hindi के बारे में बताया गया है की क्या होता है कैसे काम करता है तो चलिए शुरू करते है
C++ abstraction का परिचय
data abstraction object oriented programming के सबसे important feature में से एक है data abstraction को data hiding भी कहा जाता है data abstraction का मतलब है की उस data को show करना जो यूजर के लिए important है और उस data को hide करना जो यूजर के लिए important नहीं है
अगर दुसरे शब्दों में कहा जाए तो यूजर को सिर्फ वह data show करना जिसके साथ बह interact करेगा और बाकी की details जो यूजर के लिए किसी भी प्रकार उपयोगी नहीं या अप्रासंगिक है उसे hide करना ही data abstraction कहलाता है
data abstraction का एक example आपका यह कंप्यूटर हो सकता है जिसके द्वारा आप इस आर्टिकल को पढ़ रहे है तो इस कंप्यूटर में आपको सिर्फ माउस के रूप में एक pointer और keyword के रूप में कुछ keys को provide की गयी है जिनके द्वारा आप इस कंप्यूटर से interact करते है
background में यह कंप्यूटर कैसे कार्य कर रहा है वह details आपको show नहीं की गयी है इसी प्रकार आपके लिए उस details का कोई उपयोग नहीं है इसी प्रकार data abstraction को implement करके आप अपने program के यूजर को सिर्फ वही data या functionality show करते है जो उसके लिए उपयोगी है वाकी की details से आप hide करते है
abstraction का उपयोग सिर्फ data को hide करने के लिए ही नहीं वल्कि data को protect करने के लिए भी किया जाता है data को hide करके आप एक तरह से उसे protect ही कर रहे होते है क्योकि hide किया जाने वाले data किसी के द्वारा एक्सेस नहीं किया जा सकता है
निचे program में data abstraction implement करने के कुछ advantage दी जा रही है
- data abstraction के माध्यम से आप program में implementation और interface को separate कर पाते है यूजर को interface को provide किया जाता है जिससे वह interact करेगा और program का real implementation hide कर लिया जाता है
- data abstraction की सबसे important advantage यह है की यदि आपको implementation में किसी प्रकार का change करना हो तो ऐया आप बिना यूजर को disturb किये interface में बदलाव की आवश्यकता नहीं होती है
- data abstraction से आपकी application secure हो जाती है
c++ में data abstraction classes में implementation members को hide करके और interface members को show करके implement किया जाता है
implementation members ऐसे class members (variable और members) होते है जो यूजर से hide किये जायेगा या फिर जिनका के लिए कोई उपयोगी नहीं है interface members (variable और methods) ऐसे members होते है जिन्हें यूजर को show किया जायेगा या जो interface के रूप में यूजर उपयोग किये जायेगा
c++ में कौनसा members hide होंगे और कौन सी members show होगे में कौनसा members hide होंगे और कौन सी members show होगे यह डिफाइन करने के लिए एक्सेस specifiers का प्रयोग किया जाता है जिनके बारे में आप अगले section में जानेगा
c++ access specifiers
c++ में members को hide और show करने के लिए २ access specifiers का प्रयोग किया जाता है जिनके बारे में आपको निचे दिया जा रहा है
- public-इस access specifier के द्वारा आप उन members को डिफाइन करते है जो किसी दुसरे कोड के द्वारा (या class के बाहर) access किये जा सकते है public access specifier के द्वारा आप program का interface डिफाइन करते है इस specifier के द्वारा किये गए सभी members दुसरे कोड को visible होते है
- private-इस access specifier के द्वारा program में implementation डिफाइन किया जाता है private access specifier के द्वारा डिफाइन किये गए members visible नहीं होते है ऐसा members को दुसरे कोड के द्वारा या class के बाहर access नहीं किया जा सकता है
किसी भी c++ program में abstraction implementation करने की best approach यह होती है की सब data members (variable) को private डिफाइन किये जाये और methods को public डिफाइन किया जाए जो data members से interact करने के लिए प्रयोग किये जायेगा
c++ access specifiers को classes में डिफाइन करने का general syntax निचे दिया जा रहा है
class-keyword class-name { private: //all private members here.... public: //all public members here....... };
जैसा की आप उपर दिए गए syntax में देख सकते है access specifier के बाद colon लगाकर उन members को डिफाइन किया जाता है जिन्हें आप private या public डिफाइन करना चाहते है
example of c++ abstraction
c++ में abstraction को implement करना निचे example के द्वारा समझाया जा रहा है
#include<iostream> Using namespace std; Class myClass { Private: Int Num=5; //hiding num Public: Void display() { Cout<<”Num is :”Num; } }; Int main() { MyClass obj; Obj.display(); //display() is interface Return 0; }
उपर दिए गए example में निचे दिया गया output को show करता है
Num is : 5
reference-https://www.geeksforgeeks.org/abstraction-in-c/
निवेदन:-आप सभी छात्र –छात्रों से निवेदन है की अगर आपको ये Topic(C++ Abstraction in hindi) या post अच्छा लगा हो तो कृपया आप इस वेबसाइट के बारे में अपने दोस्तों को जरुर बताये और -अगर कोई topic(C++ Abstraction in hindi) से संबधित प्रश्न हो तो कमेंट्स(comments) आपके लिए ही बना है और किसी Subject(C++ Abstraction in hindi) के लेकर भी कोई प्रश्न हो तो कमेंट करे