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