तुलना चार्ट
तुलना के लिए आधार | मतिहीनता | डेटा छिपाना |
---|---|---|
बुनियादी | केवल प्रासंगिक जानकारी निकालता है और अयोग्य विवरणों को अनदेखा करता है। | कार्यक्रम के कुछ हिस्सों से डेटा छुपाता है। |
उद्देश्य | जटिलता को छिपाने के लिए। | इनकैप्सुलेशन प्राप्त करने के लिए। |
कक्षा | क्लास एक नए उपयोगकर्ता-निर्धारित डेटाटाइप को प्राप्त करने के लिए एब्स्ट्रैक्शन का उपयोग करता है। | डेटा छिपाना का उपयोग एक वर्ग में अपने डेटा को निजी बनाने के लिए किया जाता है। |
पर उपद्रव | डेटा का अवलोकन योग्य व्यवहार। | एक कैप्सूल के भीतर डेटा के उपयोग को प्रतिबंधित या अनुमति देना। |
अमूर्तता की परिभाषा
अमूर्तता का उपयोग मुख्य रूप से जटिलता को छिपाने के लिए किया जाता है। यह एक वस्तु की आवश्यक विशेषताओं को इंगित करता है जो इसे अन्य सभी प्रकार की वस्तुओं से अलग करता है। एक अमूर्त वस्तु के बाहरी पहलू पर ध्यान केंद्रित करता है। एक वस्तु के लिए, अमूर्त इसके कार्यान्वयन से महत्वपूर्ण व्यवहार को अलग करने की सुविधा प्रदान करता है। यह दर्शक के दृष्टिकोण के सापेक्ष एक वैचारिक सीमा निर्दिष्ट करता है। एक उचित अमूर्त विवरण उन विवरणों पर जोर देता है जो पाठक या उपयोगकर्ता के लिए महत्वपूर्ण हैं और ऐसी विशेषताओं को दबाते हैं जो अप्रासंगिक और विचलित हैं।
उपयोगकर्ता-परिभाषित डेटा प्रकार वास्तविक विशेषताओं को डिजाइन करने के लिए एक वर्ग के भीतर अमूर्त विशेषताओं और कार्यों को परिभाषित करके बनाए जाते हैं, एक जैसे गुण होते हैं। इन विशेषताओं को डेटा सदस्यों के रूप में जाना जाता है क्योंकि उनमें जानकारी होती है। इसी प्रकार, इन डेटा पर काम करने वाले कार्यों को सदस्य कार्यों के रूप में जाना जाता है। डेटा अमूर्त को एक वर्ग के रूप में लागू किया जाता है जो पृष्ठभूमि स्पष्टीकरणों को शामिल किए बिना आवश्यक गुणों का प्रतिनिधित्व करता है।
अमूर्त के प्रकार:
- प्रक्रियात्मक अमूर्तता - इसमें निर्दिष्ट कार्यों वाले निर्देशों की श्रृंखला शामिल है।
- डेटा एब्स्ट्रक्शन - यह डेटा का सेट है जो डेटा ऑब्जेक्ट को निर्दिष्ट और वर्णित करता है।
- नियंत्रण अमूर्त - यह कार्यक्रम नियंत्रण तंत्र है जहां आंतरिक विवरण निर्दिष्ट नहीं किए जाते हैं।
डेटा छुपाने की परिभाषा
डेटा छिपाना का तात्पर्य प्रोग्राम के उन घटकों से डेटा को छिपाना है जिन्हें पुनर्प्राप्त करने की आवश्यकता नहीं है। प्रोग्राम द्वारा डायरेक्ट एक्सेस से डेटा के अलगाव को डेटा छिपाना या सूचना छिपाना कहा जाता है। डेटा छिपाने के कार्यान्वयन के लिए, एनकैप्सुलेशन का उपयोग किया जाता है जहां किसी वर्ग का डेटा और फ़ंक्शन अनधिकृत पहुंच से सुरक्षित होता है। इसके विपरीत, जब डेटा और फ़ंक्शन को एक इकाई में रखा जाता है, तो एनकैप्सुलेशन के रूप में जाना जाता है। इसलिए, डेटा छिपाना एनकैप्सुलेशन को प्राप्त करने में सहायता करता है। किसी ऑब्जेक्ट के कार्यात्मक विवरण को एक्सेस स्पेसर्स के माध्यम से नियंत्रित किया जा सकता है।
डेटा छुपाने वाली अवधारणाओं का उपयोग करते हुए, एक कक्षा में डेटा और फ़ंक्शन को निजी बनाया जाता है ताकि इसे क्लास के बाहर के कार्यों द्वारा गलत तरीके से एक्सेस नहीं किया जा सके और आकस्मिक परिवर्तन से संरक्षित किया जा सके।
अमूर्त और डेटा छुपा के बीच महत्वपूर्ण अंतर
- अमूर्त प्रासंगिक जानकारी दिखाता है और गैर-आवश्यक विवरणों को अस्वीकार करता है। दूसरी ओर, डेटा छिपाना का उपयोग प्रोग्राम के कुछ हिस्सों से डेटा को छिपाने के लिए किया जाता है।
- अमूर्तता का पूर्व उद्देश्य कार्यक्रम या सॉफ्टवेयर के जटिल कार्यान्वयन विवरण को छिपाना है। इसके विपरीत, एनकैप्सुलेशन प्राप्त करने के लिए डेटा छिपाना लागू किया जाता है।
- एब्स्ट्रेक्शन का उपयोग कक्षा में एक नया उपयोगकर्ता-परिभाषित डेटाटाइप बनाने के लिए किया जाता है। जैसा कि, कक्षाओं में डेटा छिपाना का उपयोग डेटा को निजी बनाने के लिए किया जाता है।
- अमूर्त डेटा के अवलोकन योग्य व्यवहार पर ध्यान केंद्रित करता है जबकि डेटा छुपाता है या एक कैप्सूल के भीतर डेटा के उपयोग की अनुमति देता है।
निष्कर्ष
एब्सट्रैक्शन और डेटा छिपाना दोनों ही आवश्यक जानकारी दिखाने के लिए और अशुभ विवरणों को छिपाने के लिए लेकिन अलग-अलग उद्देश्य के लिए हैं। अमूर्तता कार्यान्वयन जटिलता को छिपाने में जोर देती है, जबकि डेटा को छिपाने में अनधिकृत पहुंच के खिलाफ डेटा की सुरक्षा को प्रमुखता दी जाती है।