object oriented programming कॉन्सेप्ट्स क्या है and Features of OOPS
History of C, C++ and object oriented Programming Language : जब 1970 के दशक मे Bell Laboratories मे Dennis Ritchie एक नया ओपरेटिंग सिस्टम बनाने मे busy थे तब उन्होंने महसूस किया की इस टास्क को पूरा करने के लिए नयी प्रोग्रामिंग लैंग्वेज की जरूरत है जो की उनके टास्क को पूरा कर सके और उन्होंने C language पर काम करना शुरू किया और कुछ समय की रिसर्च के बाद C language डिज़ाइन की | इसके बाद 1980 के दशक मे Bell Laboratories मे ही दूसरी programming language C++ बनायीं गयी जो की C का ही extended रूप थी एंड पूरी तरह से C language पर बेस थी | C++ language को बनाने का श्रेय Bjarne Stroustrup को जाता है | Stroustrup के अनुसार C++ को बनाने का purpose C language की कमी दूर करना व् उस language को पावरफुल बनाते हुए constructive टास्क मे use करना था जिससे की अच्छे, इजी व् स्ट्रक्चर्ड प्रोग्राम्स लिखे जा सके| जब C++ को डिज़ाइन किया गया तो उन्होंने OOPS (ऑब्जेक्ट ओरिएंटेड प्रोग्रामिंग) फीचर को C लैंग्वेज मे introduce किया लेकिन उसके लिए C के किसी भी कॉम्पोनेन्ट को चेंज नहीं किया गया| इसलिए ही C++ को “relative” या C का सुपरसेट भी कहा जाता है जिसका मतलब है की कोई भी प्रोग्राम जो c मे valid है वो सभी C++ मे भी वैलिड होंगे|

object oriented programming
C++ को design करने का मुख्यः कारन C लैंग्वेज मे ऑब्जेक्ट orientation फीचर ऐड करना था। C++ language मे ऑब्जेक्ट ओरिएंटेड concept introduce करने से procedural अप्प्रोच की कमियों को दूर करने मे और उसको अपग्रेड करने मे बहुत सहायता मिली क्योकि OOPs से Inheritance, Polymorphism, Abstraction, Encapsulation जैसे features मिले जो की C++ language को powerful बनाते है । |
Definition of Object oriented programming : ऑब्जेक्ट ओरिएंटेड प्रोग्रामिंग एक ऐसा मेथड है जिसमे एक सिस्टम को बहुत सारे objects का collection माना जाता है जो की किसी task को complete करने के लिए आपस मे interact करते है | ऑब्जेक्ट ओरिएंटेड प्रोग्रामिंग मे क्लास और ऑब्जेक्ट्स को कुछ दूसरे features जैसे इनहेरिटेंस, पॉलीमॉरफिस्म, एब्स्ट्रक्शन, एन्काप्सुलेशन के साथ उपयोग करते हुए प्रोग्रामिंग को आसान बनाया जाता है | Objects डाटा पर ऑपरेट होने वाली वो एंटिटी होती है जो की डाटा एंड procedures को encapsulate (या जोड़ती) करती है |
Read Also – What is c programming language
Read Also – What is PHP Programming Language
Read Also – What is JAVA Programming Language
OOPS मे यह बहुत आसानी से पता लगाया जा सकता है किसी डाटा को modify करने के लिए कौनसे फंक्शन को use करना है और अगर कोई एडिशनल फीचर ऐड करना हो तो उसके लिए कहाँ पर फंक्शन और इससे related डाटा को add किया जाये| ऑब्जेक्ट ओरिएंटेड प्रोग्रामिंग का मैन पर्पस प्रोग्राम की डिज़ाइन, प्रोग्रामिंग एवं de-bugging को आसान करना होता है |
ऑब्जेक्ट क्या है : Object एक डाटा स्ट्रक्चर है जिसमे डाटा (फ़ील्ड्स) एवं फंक्शन्स (methods) होते है | Objects को class की instance भी कहा जाता है | डाटा एवं functions के कॉम्बिनेशन से एक object बनता है – इस प्रकार एक Object = data + method |
Example : इस प्रकार object-oriented programming का कोर, ऑब्जेक्ट ही होता है एवं coding मे object क्रिएट किये जाते है जिसकी कुछ properties and methods होते है। जब C++ का कोई module design करते है तो उसमे world की सभी चीजों को ऑब्जेक्ट की फॉर्म मे देखते है। जैसे कार एक ऑब्जेक्ट है जिसकी कुछ properties होती है जैसे कलर, दरवाजे आदि । इसके साथ साथ इसके कुछ methods होंगे जैसे ब्रेक, accelerator आदि ।
object oriented programming में-
- डाटा पर emphasis होता है procedures पर नहीं |
- प्रोग्राम्स को छोटे instance (जिनको ऑब्जेक्ट कहते है) मे divided होते है |
- Data हिडन होते है एवं उनको external functions से access नहीं किया जा सकता|
- Methods की help से Objects एक दूसरे से कम्यूनिकेट कर सकते है |
- प्रोग्राम्स bottom-up approach को follow करते है |
- जब और जहाँ पर जरूरत हो नए डाटा को आसानी से ऐड किया जा सकता है |
Main features of Object Oriented programming-
- Polymorphism
- Inheritance
- Encapsulation
- Data Hiding
- Overloading
- Reusability
Advantage of OOPS :
- यह एक ऐसा स्ट्रक्चर क्रिएट करती है जो की सिंपल व् आसानी से मेन्टेन हो सकता है।
- नए फीचर्स आसानी से add कर सकते है एवं इसके लिए पहले का set of code disturb करने की जरूरत नहीं होती ।
- Object को दूसरे programs मे भी उपयोग किया जा सकता है।
- Inheritance की हेल्प से कोड को वापस से (reuse) उपयोग किया जा सकता है।
- ऑब्जेक्ट के base पर काम को easily partition किया जा सकता है।
- सॉफ्टवेयर एंड कोड की Complexity को आसानी से handle एवं मैनेज किया जा सकता है।
- डाटा hiding possible है।
- OOP प्रोग्राम्स के लिए क्लियर मॉडुलर स्ट्रक्चर प्रोवाइड करता है।
- ऑब्जेक्ट रियल लाइफ सिनेरियो पर बेस्ड होते है इसलिए ह्यूमन ऑब्जेक्ट व् क्लास को आसानी से समझ सकते है।
- Project की मेन्टेन्स इजी हो जाती है क्योकि बिज़नेस मे छोटे मोटे चेंज करने के लिए बहुत कम परिवर्तन करने होते है एवं इसके लिए पुरे प्रोजेक्ट मे कोई प्ररिवर्तन नहीं करना होता|
Read Also – What is .NET Technology
Read Also – What is Array in C Programming Language
Read Also – What is Data Structure
Sir ji thanks, OOPs Concept ko aap itna asaan tarike se samjha diya hai ki ise Koi Bhi Samjh sakya hai aur Mujhe Hindi Me Concept thoda acche se samjh me aata hai