अमूर्त बनाम एनकैप्सुलेशन

लेखक: Laura McKinney
निर्माण की तारीख: 8 अप्रैल 2021
डेट अपडेट करें: 1 मई 2024
Anonim
Abstraction In Software Design - With Examples
वीडियो: Abstraction In Software Design - With Examples

विषय

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


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

  • तुलना चार्ट
  • अमूर्तता क्या है?
    • उदाहरण
  • एनकैप्सुलेशन क्या है?
    • उदाहरण
  • अमूर्तता और एनकैप्सुलेशन के बीच महत्वपूर्ण अंतर
  • निष्कर्ष

तुलना चार्ट

बुनियादी मतिहीनता encapsulation
परिभाषा तत्वों को विकसित करने की आवश्यकता है
प्रणाली।
एनकैप्सुलेशन एक जटिल प्रणाली विकसित करने की एक प्रक्रिया है
उपलब्धि एनकैप्सुलेशन के माध्यम से प्राप्त किया। के सदस्य बनाने के माध्यम से प्राप्त किया
निजी के रूप में कक्षा।
केंद्रित फोकस इस बात पर है कि क्या किया जाना चाहिए फोकस इस पर है कि इसे कैसे किया जाना चाहिए।
आवेदन डिजाइन स्तर के दौरान। कार्यान्वयन के दौरान
स्तर।
उदाहरण सेल फोन की GUI, उस पर क्लिक करने के लिए कुछ आइकन हैं, जिस पर
विशिष्ट कार्य करने के लिए क्लिक करें।
जब आइकन पर क्लिक किया जाता है,
अंतिम उपयोगकर्ता को इसके कार्यान्वयन विवरण के बारे में कोई पता नहीं है

अमूर्तता क्या है?

अमूर्तता महत्वपूर्ण तत्वों को निकालने का एक तंत्र है
एक प्रणाली के निर्माण के लिए, इसके कार्यान्वयन के विवरण के बिना। में
अमूर्तता, हमें केवल इस बात पर ध्यान केंद्रित करना चाहिए कि इसे कैसे करना है बजाय इसके कि क्या करना है
करना ज़रूरी है। अमूर्त एक विचार प्रक्रिया है, यह डिजाइन में समस्याओं को हल करती है
स्तर।


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

उदाहरण

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

इसलिए, अमूर्तता केवल सामान्यीकरण है कि कौन से तत्व हैं
एक प्रणाली बनाने के लिए आवश्यक है, अर्थात् महत्वपूर्ण लोगों को उठाकर।

एनकैप्सुलेशन क्या है?

एनकैप्सुलेशन ऑब्जेक्ट-ओरिएंटेड प्रोग्रामिंग की महत्वपूर्ण विशेषता है। यह एक तंत्र है जो
कोड और डेटा को एक साथ बांधता है और उन्हें बाहरी से सुरक्षित रखता है
दखल अंदाजी। यह कहना है, एन्कैप्सुलेशन प्रणाली की जटिलता को छुपाता है,
चूँकि यहाँ कीवर्ड डेटा छुपा हुआ है। यह एक सुरक्षात्मक के समान है
आवरण, जो कोड और डेटा को वर्ग के भीतर छुपाता है, द्वारा प्राप्त किया जा रहा है
एक अन्य कोड जो वर्ग और सदस्य फ़ंक्शन / विधि के बाहर परिभाषित किया गया है
वे वर्ग के सदस्य नहीं हैं।


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

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

उदाहरण

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

तो, इस तरह, इनकैप्सुलेशन जटिलता को छुपाता है और
डेटा के दुरुपयोग को रोकें।

अमूर्तता और एनकैप्सुलेशन के बीच महत्वपूर्ण अंतर

  1. अमूर्त उन घटकों पर ध्यान केंद्रित करता है जिनकी आवश्यकता होती है
    एन्कैप्सुलेशन की जटिलता को छिपाने पर ध्यान केंद्रित करते हुए एक प्रणाली का निर्माण
    प्रणाली।
  2. अमूर्त प्रणाली के डिजाइन स्तर के दौरान किया जाता है और
    एन्कैप्सुलेशन तब किया जाता है जब सिस्टम होता है
    लागू किया गया है।
  3. मुख्य उद्देश्य यह है कि निर्माण के लिए क्या किया जाना है
    एक प्रणाली जबकि एनकैप्सुलेशन मुख्य उद्देश्य है, सिस्टम बनाने के लिए यह कैसे किया जाना चाहिए।
  4. अमूर्त द्वारा प्राप्त किया जाता है
    एन्कैप्सुलेशन जबकि, इनकैप्सुलेशन के तत्वों को बनाकर हासिल किया जाता है
    प्रणाली निजी।

निष्कर्ष

अमूर्तता और अतिक्रमण
दोनों OOP की महत्वपूर्ण विशेषता हैं। एक महान एनकैप्सुलेशन एक शानदार अमूर्तता प्राप्त कर सकता है।