Object:-
आब्जेक्ट एक अवास्तविक या आभासी डाटा टाइप होता है। जिसे प्रोग्रामर के द्वारा बनाया जाता है। ऑब्जेक्ट का कांसेप्ट object-oriented programming (OOP) में होता है। ज्यादातर प्रोग्रामिंग भाषाओं में, objects को क्लास के तौर पर डिफाइन करते है।
ऑब्जेक्ट्स में स्थिति (state), डाटा और उनसे संबधित व्यवहार, (behavior/ method) एक बंडल की तरह एक जगह ‘सॉफ्टवेयर’ में संग्रहित रहते है।
सॉफ़्टवेयर ऑब्जेक्ट्स का उपयोग रोजमर्रा की जिंदगी में मिलने वाली वास्तविक दुनिया की वस्तुओं को मॉडल करने के लिए किया जाता है।
Message:-
सॉफ्टेयर ऑब्जेक्ट, एक दूसरे को Message या संदेश भेजकर, एक दूसरे के साथ बातचीत और संचार करते हैं।
जब ऑब्जेक्ट ‘ए’ चाहता है कि ऑब्जेक्ट ‘बी’, -> बी के किसी एक methods का प्रदर्शन करे,-> तो ऑब्जेक्ट ए, ऑब्जेक्ट बी को एक message भेजता है।
Message Passing:-
दो प्रासेस के बीच कम्यूनिकेशन को मैसेज पास करना Message Passing कहते है। आब्जेक्ट ओरियंटेड प्रोग्रामिंग एवं पैरेलल प्रोग्रामिंग में यह कम्यूनिकेशन का तरीका है।
Messages provide two important benefits:-
An object’s behavior is expressed through its methods, so (aside from direct variable access) message passing supports all possible interactions between objects.
Objects don’t need to be in the same process or even on the same machine to send and receive messages back and forth to each other.
Class:-
क्लास, किसी आब्जेक्ट का खाका या प्रोटोटाइप (blueprint) है, जिससे ऑब्जेक्ट बनाए जाते हैं। क्लास मे किसी ऑब्जेक्ट के लिए वैरियेबल और मेथ्ड को परिभाषित किया जाता है। क्लास बनाने पर या डिक्लियर करने पर यह मेमोरी मे जगह नहीं लेते। जब इस क्लास से ऑब्जेक्ट बनाया जाता है तो यह मेमोरी में जगह लेते है। (object is instance of class)
Methods( Procedure ):-
Once you have created objects, you want them to be able to do something. This is where methods come in. A method in object-oriented programming is a procedure associated with a class. A method defines the behavior of the objects that are created from the class.
आब्जेक्ट कोइ कार्य अपने मेथड की सहायता से ही करता है। मेथड अपने आब्जेक्ट के डाटा पर या दूसरे ऑब्जेक्ट के डाटा पर कार्य कर सकते है.
कोई आब्जेक्ट क्या-क्या कार्य कर सकता है, उस आब्जेक्ट के मेथड ही निर्घारित करते है। मेथड और क्लास के बंधन को बाइंडिंग कहते है। मेथड कोड को आसान और व्यवस्थित रखने में मदद करते हैा
प्रोसीजर:-
प्रोसीजर , विजुअल बेसिक में लिखे इंसट्रक्शन, ‘स्टेटमेंट कोड’ का एक ब्लाक होता है। इन स्टेटमेंट को डिक्लयरेशन स्टेटमेंट ओर END स्टेटमेंट के बीच रखा जाता है (Sub … End sub )।
विजुअल बेसिक में सभी इक्सक्यूटेबल स्टेटमेंट किसी न किसी प्रोसीजर के बीच रखे जाते हैं। इसे रीपीटीटिव टास्क करने के लिये बनाया जाता है। जिससे प्रोग्राम के अन्दर कोड का रीपीटीशन न हो। प्रोग्राम को छाटे टुकड़ों में बांट कर सरल बनाने केा ही माडुलर प्रोग्रामिंग कहते है।
विजुअल बेसिक में निम्न प्रकार के ‘प्रोसीजर’ प्रयोग होते है:-
सब प्रोसीजर:-
सब प्रोसीजर एक्शन करते है, लेकिन कोई रिटर्न वैल्यू , प्रोसीजर को काल करने वाले कोड को नहीं लौटाते। किसी इवेंट को हैंडल करने वाले प्रोसीजर ‘सब प्रोसीजर’ होते हैं।
उपयोगकर्ता द्वारा किसी एक्शन बटन को क्लिक करना एक इवेंट होता है। बटन को क्लिक करने पर क्या रिसपान्स होना चहिये यह इस इवेंट को हैंडल करने वाले सब प्रोसीजर में लिखे कोड पर निर्भर होगा ।
Function Procedures:-
फंक्शन प्रोसीजरFunction Procedures अपने काल करने वाले कोड को कुछ वैल्यू रिटर्न करते हैं। वैल्यू रिटर्न करने के पहले ये कुछ एक्शन करते हैं।
Property Procedures:-
Property Procedures प्रोसीजर किसी ‘आब्जेक्ट या माड्यूल’ की प्रापट्री को कोइ वैल्यू देता है और रिटर्न करता है। associated with property. every controls has property.
Operator Procedures:-
Operator Procedures प्रोसीजर किसी क्लास या स्ट्रक्चर के बीच के आपरेटर का बिहेवियर निर्धारित करता है। इस आपरेटर के एक तरफ या दोंनो तरफ के आपरेंड नये बनाये गये क्लास या स्ट्रक्चर हो सकते है।
Event procedures:-
function associated with event ex. click button event associated with vb controls button list box check box etc.
कोड में किसी भी जगह प्रोसीजर को सक्रिय करना प्रोसीजर काल कहलाता है। प्रोग्राम के जो स्टेटमेंट प्रोसीजर को काल करता है उसे कालिंग कोड कहते हैं। प्रोसीजर रन होने के बाद अपने ‘कालिंग कोड’ को वैल्यू और कंट्रोल रिटर्न कर देता है।
प्रोसीजर काल करने के लिये कालिंग कोड के स्टेटमेंट में प्रोसीजर का नाम टाइप किया जाता है। जिससे कंट्रोल प्रोसीजर को मिल जाता है। प्रोसीजर रन होने के पश्चात कंट्रोल दुबारा कालिंग कोड को ट्रांसफर कर देता है ।
Return statement के द्वारा कंट्रोल तुरंत कालिंग कोड को रिटर्न होता है , ओर इसके बाद के स्टेटमेंट रन नहीं होते । किसी प्रोसीजर में एक से अधिक ‘रिटर्न स्टेटमेंट’ हो सकते हैं।
Exit Sub या Exit Function ‘Exit Sub’ या ‘Exit Function’ statement, के द्वारा कंट्रोल कालिंग कोड को तुरंत रिटर्न होता है ओर इसके बाद के स्टेटमेंट रन नहीं होते । किसी प्रोसीजर में एक से अधिक Exit स्टेटमेंट हो सकते हैं। किसी एक प्रोसीजर में रिटर्न और इक्सिट दोनों स्टेटमेंट हो सकते हैं।
End Sub , End Function, यदि किसी प्रोसीजर में रिटर्न ओर इक्सिट दोनों स्टेटमेंट नहीं है तो यह प्रेासीजर End Sub or End Function, End Get, or End Set statement के द्वारा समाप्त होता है। कंट्रोल कालिंग कोड को रिटर्न हो जाता है। ओर इसके बाद के स्टेटमेंट रन नहीं होते । किसी प्रोसीजर में केवल एक End स्टेटमेंट हो सकते हैं।
1-फंक्शन प्रोसीजर (या मेथड):-
फंक्शन प्रोसीजर में स्टेटमेंट Function और End Function के बीच रखे जाते है। फंक्शन प्रोसीजर में कुछ इंन्सर्टक्शन की सीरीज, कोड होते है जो काल करने पर इक्जीक्यूट होते है। जब भी फंक्शन को काल किया जाता है तो इसके स्टेटमेंट पहले स्टेटमेंट से शुरू होकर क्रम से End Function, Exit Function, or Return स्टेटमेंट मिलने तक रन हो जाते है।
किसी फंक्शन को module, class, or structure के अंदर डिफाइन किया जा सकता है। फंक्शन ‘बाइ डिफाल्ट’ पब्लिक होता है, इसे अप्लिकेशन के किसी भी भाग से, जहां पर इसके क्लास या स्ट्रक्चर की एक्सेस है काल किया जा सकता है।
‘फंक्शन प्रोसीजर’ कान्सटेंट , वैरियेबल या एक्सप्रेशन अरग्यूमेंट की तरह ले सकते हैं। इस अरग्यूमेंट को कालिंग फंक्शन द्वारा पास किया जाता है।
फंक्शन बिल्कुल सबरूटीन प्रोसीजर की तरह होते है लेकिन ये रन होने पर रिटर्न वैल्यू दे सकते है। फंक्शन प्रोसीजर को किसी इक्सप्रेशन में प्रयोग कर सकते है लेकिन सबरूटीन प्रोसीजर को नहीं। Functions are called by a variable.
फंक्शन डिक्लेयर करने का सिंटेक्स:-
[Modifiers] Function FunctionName [(ParameterList)] As ReturnType
[Statements]
End Function
2- सबरूटीन प्रोसीजर या मेथड: –
सबरूटीन प्रासीजर में स्टेटमेंट , Sub ओर End Sub के बीच रखे जाते है। जब सबरूटीन प्रासीजर काल होता है तो ये स्टेटमेंट रन हो जाते है। सबरूटीन प्रोसीजर के द्वारा एक्शन तो होता है लेकिन कोइ रिटर्न वैल्यू नहीं प्राप्त होती है। सब प्रासीजर प्रोग्राम में कहीं भी और कितनी भी बार काल हो सकते है।
मेथड और फंक्शन में अंतर:-
फ़ंक्शन कोड का एक टुकड़ा है जिसे प्रोग्राम मे नाम से काल किया जा सकता है। इसे रन करने के लिए डेटा (यानी पैरामीटर) पास किया जा सकता है फंक्शन डेटा (रिटर्न वैल्यू) वापस भी कर सकता है।
मेथड भी एक फंक्शन ही होता है। लेकिन यह किसी आब्जेक्ट का हिस्सा होता है। इसे भी नाम से काल किया जा सकता है।
आब्जेक्ट से जुड़ा फंक्शन मेथड कहलाता है। मेथड केवल आब्जेक्ट या क्लास के अंदर के ही डाटा पर आपरेट कर सकता है। जिस क्लास का वह मेथड हिस्सा है।
What is module in VB:-
माड्यूल एक कंटेनर की तरह है, जिसमें फंक्शन, प्रोसीजर या वैरियेबल डिक्लियेर किये जाते है। एक माड्यूल के अंदर डिम कीवर्ड से बनाये गये वेरियेबल केवल अपने माड्यूल के अंदर ही एक्सेस किये जा सकते है। पब्लिक कीवर्ड से डिक्लियर करने पर ही ये वैरियेबल बाहर से एक्सेस किये जा सकते है।