Tabla de Contenidos
एकत्रीकरण कक्षाओं के बीच एक प्रकार का जुड़ाव है जिसे जावा जैसी विभिन्न वस्तु-उन्मुख प्रोग्रामिंग भाषाओं में किया जा सकता है। यह एक ऐसी प्रक्रिया है जो कोड को जल्दी और कुशलता से पुन: उपयोग करने की अनुमति देती है, जिससे प्रोग्राम को लिखना और अधिक कुशलता से चलाना आसान हो जाता है।
सामान्यतया, एकत्रीकरण एक वर्ग को दूसरी कक्षा के भीतर संदर्भित कर रहा है। यह युक्त वर्ग और युक्त वर्ग के बीच HAS-A संबंध बनाता है। इन संबंधों को यूनिडायरेक्शनल होने की विशेषता है, क्योंकि उनका अर्थ है कि एक वर्ग में दूसरा शामिल है; यह विपरीत होने से रोकता है।
उदाहरण के लिए, हम कह सकते हैं कि एक कंपनी, जिसे प्रोग्रामिंग के दृष्टिकोण से एक वस्तु वर्ग के रूप में देखा जा सकता है, के पास कर्मचारियों का एक समूह है; बदले में, इन्हें अपनी विशेषताओं वाली वस्तुओं के रूप में भी देखा जा सकता है। इस मामले में, युक्त वर्ग कंपनी है, जबकि युक्त वर्ग कर्मचारी है। यह रिश्ता केवल इस दिशा में, यानी कंपनी से कर्मचारी तक समझ में आता है। विपरीत दिशा में संबंध का कोई मतलब नहीं है, क्योंकि यह कहने जैसा होगा कि कर्मचारी में कंपनी शामिल है। तथ्य यह है कि इसका कोई मतलब नहीं है यह दर्शाता है कि यह एक तरफ़ा रिश्ता है।
वर्ग आरेखों में एकत्रीकरण
यूनिफाइड मॉडलिंग लैंग्वेज (यूएमएल) में, जो जटिल सॉफ्टवेयर सिस्टम डिजाइन करने के लिए बनाई गई एक प्रकार की सार्वभौमिक दृश्य भाषा है, सिस्टम की संरचना और विशेषताओं का वर्णन करने के लिए क्लास आरेखों का उपयोग किया जाता है। इन आरेखों में प्रत्येक वर्ग और दूसरों के साथ उसके संबंधों को ज्यामितीय आकृतियों के माध्यम से दर्शाया गया है। एकत्रीकरण के मामले में, इस संबंध को युक्त वर्ग के किनारे एक खोखले हीरे द्वारा दर्शाया जाता है, जो एक सीधी रेखा खंड के माध्यम से युक्त वर्ग से जुड़ा होता है। उदाहरण के लिए:
यह एक एकत्रीकरण संबंध है जो इंगित करता है कि वेल क्लास में डक क्लास शामिल है।
जावा में एकत्रीकरण कैसे कार्यान्वित किया जाता है?
जावा में एकत्रीकरण का कार्यान्वयन अपेक्षाकृत सरल है। यह सिर्फ दो वर्गों को बनाने और फिर दूसरे के अंदर पहली कक्षा को संदर्भित करने की बात है।
“हैव ए” या “हैव टू” संबंध स्थापित करने के अलावा, जावा एकत्रीकरण को कंटेनर ऑब्जेक्ट और सामग्री के बीच एक कमजोर संबंध की विशेषता है। इसका अर्थ यह है कि एक के नष्ट होने का अर्थ दूसरे का नष्ट होना नहीं है। इस प्रकार के संबंध को समझने के लिए एक शिक्षक और उसके छात्रों के बीच के संबंध को एक उदाहरण के रूप में लिया जा सकता है। इस मामले में, शिक्षक के लापता होने या मृत्यु का परिणाम उसके छात्रों के गायब होने या मृत्यु में नहीं होता है।
विपरीत मामला एक इंसान और उसके दिल के बीच का रिश्ता होगा। इसमें कोई शक नहीं है कि दिल इंसान में समाया हुआ है, लेकिन यह रिश्ता एकत्रीकरण से अलग है। ऐसा इसलिए, क्योंकि इस मामले में दोनों एक-दूसरे पर निर्भर हैं। मनुष्य का विनाश हृदय को भी नष्ट कर देता है, क्योंकि कार्य करने के लिए उसे पोषक तत्वों और ऑक्सीजन की आवश्यकता होती है जो शरीर प्रदान करता है। दूसरी ओर, हृदय का विनाश भी मनुष्य को नष्ट कर देता है, क्योंकि हृदय के बिना हम नहीं रह सकते (प्रत्यारोपण या कृत्रिम जीवन समर्थन के अन्य तरीकों को छोड़कर)।
एकत्रीकरण उदाहरण
निम्नलिखित कोड जावा का उपयोग करके दो वर्गों के बीच जुड़ाव के रूप में एकत्रीकरण के कार्यान्वयन का उदाहरण देता है। उदाहरण एक कार्यक्रम के बारे में है जो इस बात पर नज़र रखता है कि किसी कंपनी के किन कर्मचारियों के पास अपनी कार है और किसके पास नहीं है, साथ ही किसके पास साइकिल है और किसके पास नहीं है।
चूंकि हम एक संबंध स्थापित करना चाहते हैं जो इंगित करता है कि कर्मचारी के पास “कार” है और/या कर्मचारी के पास “साइकिल” है, यह उस वर्ग के बीच एक एकत्रीकरण संबंध है जिससे कर्मचारी संबंधित होगा (जिसे हम कर्मचारी कहेंगे , स्पष्ट कारणों के लिए) और दो अतिरिक्त कक्षाएं, एक कार के लिए और एक साइकिल के लिए।
इन मामलों में करने वाली पहली बात संबंधित वर्ग बनाना है। इस मामले में, तीन वर्ग हैं: एक कार के लिए, एक साइकिल के लिए, और एक कर्मचारी के लिए। निम्नलिखित आंकड़ा इन वर्गों को बनाने के लिए कोड दिखाता है, जिन्हें कार, साइकिल और कर्मचारी नाम दिया गया है।
उपरोक्त कोड में आप यह भी देख सकते हैं कि प्रत्येक वर्ग के साथ कुछ विशेषताएँ जुड़ी हुई हैं। कार के मामले में, इसमें कार से जुड़े मॉडल, रंग और लाइसेंस प्लेट्स जैसे गुण हैं। साइकिल के साथ भी ऐसा ही होता है, जो लाइसेंस प्लेट नंबर और मॉडल से जुड़ा होता है।
जब हम कर्मचारी वर्ग को देखते हैं, तो हम देखते हैं कि इस वर्ग में मोनब्रीम्प गुण हैं , जो कर्मचारी के नाम का प्रतिनिधित्व करता है, और एम्पिड, जो कर्मचारी की पहचान संख्या का प्रतिनिधित्व करता है; इसके बाद यह कार और बाइक कक्षाओं को संदर्भित करता है, इन वर्गों के बीच एकत्रीकरण संघ बनाता है। अंत में, एक कर्मचारी का रिकॉर्ड उसकी कार और साइकिल के साथ बनाया जाता है।
ध्यान दें कि इस उदाहरण में, कर्मचारी वर्ग के भीतर कार और बाइक कक्षाओं को संदर्भित करने से कर्मचारी वर्ग के भीतर से बाइक और कार की विशेषताओं तक पहुंचना संभव हो जाता है।
इस कार्यक्रम का आउटपुट होगा:
________कर्मचारी विवरण_______
कर्मचारी का नाम: जेवियर
कर्मचारी पहचान संख्या: 210921
________कर्मचारी कार विवरण________
कार मॉडल: कोरोला
कार का रंग: हरा
कार लाइसेंस प्लेट: XFZ-043
________कर्मचारी बाइक विवरण________
बाइक मॉडल: मेरिडा
साइकिल प्लेटें: LAA-11B
संदर्भ
- जावा प्रोग्रामिंग में एकत्रीकरण । (2020)। इची.प्रो. https://ichi.pro/es/agregacion-en-programacion-java-144087060492693
- बारकिनेरो, झामुमो (2019)। वर्ग आरेखों में एकत्रीकरण बनाम संरचना। यूएमएल। | समुद्र ब्लॉग । समुद्र ब्लॉग। https://www.seas.es/blog/informatica/agregacion-vs-composicion-en-diagramas-de-clases-uml/
- सॉफ्टवेयर सलाह। (2019)। OOP8 – जावा में ऑब्जेक्ट ओरिएंटेड प्रोग्रामिंग – UML आरेख और OOP – व्यायाम [वीडियो]। यूट्यूब। https://www.youtube.com/watch?v=-Gy7Rf_wOeY