HindiTech

New Era of Information

oops concepts in python in Hindi

आज हम बात करेंगे OOP यानी Object Oriented Programming की OOP एक ऐसा कॉन्सेप्ट है Programming World में,

जिसकी मदद से आप अपने प्रोग्राम को simple और effective बना सकते हो।

OOPs concepts in python in Hindi | पाइथन में Oops क्या है?

OOP की मदत से आप real-world entities को अपने प्रोग्राम में रिप्रेजेंट कर सकते हो।

क्युकी हम सब objects से घिरे हुए है यानी आपका Mobile एक तरह का object है, आपका Laptop एक object है

इस Universe में हम Living Beings भी एक object ही है। 

और इन real-world entities जैसे Mobile, Car, Bike, Laptop और कई,

इन सब को computer program में represent करने के लिए OOP concepts काम आते है। 

पाइथन भी एक Object Oriented Programming language है

यानी आप OOP के concepts का इस्तेमाल करके अपने प्रोग्राम को और अच्छा कर सकते हो।

और अगर आप एक अच्छे प्रोग्रामर बनना चाहते हो तो आपको OOP आना ही चाहिए।

OOP के कुछ फ़ायदे है जैसे Class sharable है, कोड का पुन: उपयोग (re-use) किया जा सकता है। डेटा सुरक्षित (Safe Data) रहता है।

OOP के 4 major principles होते है :-

Encapsulation

Abstraction

Inheritance

Polymorphism

Encapsulation

oops-concepts-in-python-in-Hindi-encapsulation

Encapsulation में आपको एक शब्द मिलेगा capsule जिसका अर्थ होता है किसी भी वस्तु को अपने अन्दर पैक या छिपा लेना।

अगर हम खाने वाले capsule की बात करे तो वह अपने अंदर कुछ ड्रग्स को पैक करके रखता है। 

और इसी  प्रक्रिया को OOP में Encapsulation के नाम से जाना जाता है।

जिसमे हम कुछ data या कुछ methods को एक class के अंदर पैक कर देते है। 

OOP में हम class बनाते है और वह Class Encapsulation का ही एक रूप है क्योंकि वह Class अपने भीतर data और methods को रखती है। 

इस class entity की मदद से हम Data Hiding को भी प्राप्त कर सकते है। 

ध्यान रखिये data hiding और encapsulation दोनों अलग अलग धारणा है।

Data Hiding

oops-concepts-in-python-in-Hindi-data-hiding

इसके नाम से ही समझ आता है की यह data को hide करता है और इस प्रक्रिया को data hiding कहा जाता है।

Example

मान लीजिये आपके पास ज्यूस से भरा हुआ एक ग्लास है और साथ ही ज्यूस से भरी हुई एक बोतल।

वह बोतल ऊपर से पैक है यानि उस पर ढ़क्कन लगा हुआ है।

ग्लास और बोतल दोनों में ज्यूस भरा हुआ है। और मानिये की यही ज्यूस आपका data है। 

अब अगर कोई गिलास से डाटा को निकालना चाहता है यानी उस ज्यूस को पीना चाहता है तो वो उस ज्यूस को आसानी से पी सकता है क्योंकि ज्यूस एक ग्लास में है और वह खुला हुआ है यानी यहाँ पर डाटा open है। 

और अगर कोई उस बोतल से ज्यूस पीना चाहता है तो सब से पहले उसे उस बोतल का ढक्कन हटाना होगा ।

फिर वह ज्यूस को पी भी सकता है या उसमे और ज्यूस डाल भी सकता है।

इस स्थिति में ज्यूस यानी Data close या सुरक्षित है आपको इसे इस्तेमाल करने के लिए कुछ methods यानी ढक्कन को हटाने जैसे कार्य करने होंगे और यही है data hiding

Data hiding में आपको data को इस्तेमाल करने के लिए कुछ methods का use करना पड़ता है।

आप data को directly use नहीं कर सकते।   

Data और methods को एक class entity में रखना Encapsulation होता है। 

और Data Hiding में आप उस data को private कर देते है और methods को public कर देते है।

Data       : Private

Method  : Public

Class

Class एक Template या Blueprint होती है real-world entities की जैसे हमारा Mobile एक Object है , हमारा laptop, Bike, Car, Fan, AC और कई, यह सब भी Object है।

और इन सब objects के attributes और methods को represent करने के लिए हम class का इस्तेमाल करते है।

Class की दो विशेषताएं होती है जैसे Attributes जिसे हम class की properties भी कह सकते है और दूसरी होती है Methods जिसे हम class के operations कह सकते है। 

Example

Mobile आपकी class हो गयी और इसका color, इसका battery backup, Cost यह सब मोबाइल के Attributes हो गए।

और mobile जो operations कर सकता है जैसे call करना , video game खेलना, message करना और कई यह सब mobile के Methods हो गए।

Implementation

पाइथन में class बनाने के लिए हम class keyword का इस्तेमाल करते है और साथ ही जिस नाम की class बना रहे है उसे Capital letter में लिखते है जैसे:

oops-main-topic-class

हमने class तो defined कर दी पर अब इसे प्रोग्राम में इस्तेमाल कैसे करे।

Class को program में use करने के लिए हमें Object की मदद लेनी होती है।

तो चलिए जानते है की object क्या होता है ? 

Object

Object एक तरह से class का instance होता है।

हमे Class को सबसे पहले Object में initialize करना होता है तभी हम class को program में execute कर पाते है। 

object-initialization

Example

हमने Mobile नाम की एक Class define की अब हम इस class को Apple नाम के object में initialize कर देंगे।

अब हम इस Apple नाम के object पर operations perform कर सकते है। और अपनी class को execute कर सकते है।

Implementation

Object बनाने के लिए हमें सिर्फ अपने object का नाम लिखना होता है और उसमे class को initialize कर देते है।

Invoking the values through object

involking-the-object

Method

Method एक फंक्शन है जो object के साथ जुड़ा हुआ है। आसान भाषा में समझे तो method को हम class में डिफाइन करते है।

और object की मदद से उस method को execute करते है। 

Implementation

Method को हम def keyword की सहायता से class में define करते है जैसे :

class-methods

Adding parameter to class

हम कुछ methods ऐसी भी define करते है जो बाद में user के द्वारा कोई values को ले और उन values को print कर सके ।

Implementation

class-adding-parameters
parameter-initializing-the-values

Constructor

Constructor भी class का एक हिस्सा है और constructor की मदद से आप values को class में ही assign कर सकते हो।

इसे define करने के लिए __init__ keyword का इस्तेमाल किया जाता है। 

Implementation

constructor-in-class

Abstraction

oops-concepts-in-python-in-Hindi-abstraction

Abstraction और Encapsulation दोनों एक दूसरे से काफी मिलते है

जैसे Encapsulation में आप data और methods को class में रख देते हो। 

वैसे ही Abstraction में आप user के लिए interface simple रखते हो।

आप वही methods user को बताते है जिससे user का काम हो जाये।

Code की डिज़ाइन भले ही complex हो पर उसको इतेमाल करने का interface user के लिए आसान होना चाहिए।

Example

अगर मैं अपने लैपटॉप और मोबाइल के बारे में बात करूं, तो दोनों में उनके circuit , processing chip , और कई अन्य complex fundamentals जैसी चीजें शामिल हैं,

लेकिन एक user  के रूप में हम उन complex चीजों को नहीं देखना चाहते हैं

हमें सिर्फ अपने मोबाइल या लैपटॉप का उपयोग करना होता है वो भी एक सरल interface के साथ। 

अगर में OOP में abstraction की बात करूं। मैंने एक class बनाई और उस class में 50-60 methods बनाये और यह सारी methods मैंने अपने reference के लिए बनाई है। 

अगर कोई user उस class को इस्तेमाल करना चाहता है तो मैं बजाये उन 50-60 methods के उस user को सिर्फ 4-5 methods ही दूंगा। 

जिससे वह user उस class को इस्तेमाल कर सके।

और वह 4-5 methods उन 50-60 methods के बराबर होगी यानी यह 4-5 methods वह सब काम करेगी जो वो 50-60 methods मिलके करती है।  

Inheritance

oops-concepts-in-python-in-Hindi-inheritance

Object Oriented programming  का सबसे महत्वपूर्ण पहलू Inheritance है।

Inheritance में child class जिसे हम Derived Class भी कहते है वह parent class यानी की Base Class के गुणों और व्यवहारों को प्राप्त करती है।

5 प्रकार के Inheritance इस्तेमाल किये जाते है।

Single Inheritance

Multiple Inheritance

Multilevel Inheritance

Hierarchical Inheritance

Hybrid Inheritance

Single Inheritance

oops-concepts-in-python-in-Hindi-single-inheritance

Single Inheritance में child class अपने parent class की सभी properties, methods को इस्तेमाल कर सकती है।

ऐसा करने के लिए सबसे पहले हमे एक Parent class define करनी होती है और फिर एक child class बना के उसमे parent class को initialize करना होता है। 

Implementation

single-inheritance

Over-riding the init method

overriding-init-method-in-single-inheritance

Multiple Inheritance

oops-concepts-in-python-in-Hindi-multiple-inheritance

Multiple Inheritance में child class एक से ज्यादा parent class से data और methods को inherit कर सकता है। 

जैसे बच्चा अपने माता-पिता के गुणों को उनसे लेता है। ठीक उसी प्रकार से OOP में Multiple Inheritance काम करता है। 

Implementation

multiple-inheritence

Multi-level Inheritance

oops-concepts-in-python-in-Hindi-multi-level-inheritance

Multilevel Inheritance में parent, child और grandchild relation होता है।

जैसे एक बच्चा कुछ गुणों को अपने पिता से लेता है ठीक उसी प्रकार पिता भी कुछ गुणों को अपने पिता या दादा से लेते है। और यह प्रक्रिया एक level में काम करती है जैसे दादा – पिता – पुत्र। 

उसी प्रकार से OOP में हम Multilevel Inheritance का इस्तेमाल करते है और यह भी उसी घटना क्रम में चलता है। यानि हम Multilevel Inheritance में एक-एक level पर classes को inherit कर सकते है। 

Implementation

multi-level-inheritance

Hierarchical Inheritance

oops-concepts-in-python-in-Hindi-hierarchical-inheritance

Hierarchical Inheritance में एक से ज्यादा child class को सिर्फ एक Parent class से inherit कर सकते है।

इसे ऐसे समझिये जैसे एक पिता के 2 पुत्र है और दोनों पुत्र अपने पिता से कुछ गुणों को ले रहे है। 

ठीक उसी प्रकार से OOP में हम Hierarchical Inheritance का इस्तेमाल करते है।

जिसमे हम सिर्फ 1 parent class बनाते है और उसे एक से ज्यादा child class में inherit करवाते है। 

Implementation

Hierarchical-Inheritance

Hybrid Inheritance

oops-concepts-in-python-in-Hindi-hybrid-inheritance

Hybrid inheritance में हम एक से ज्यादा Inheritance को एक ही समय पर इस्तेमाल करते है।

जैसे हम single inheritance को multiple inheritance के साथ इस्तेमाल कर सकते है।

वैसे ही multiple inheritance को multilevel inheritance और Hierarchical Inheritance को इस्तेमाल कर सकते है।

Hybrid inheritance यानी सभी type के inheritance का mix-up. 

Implementation

hybrid-inheritance

Polymorphism

oops-concepts-in-python-in-Hindi-polymorphism

Poly का मतलब होता है ज्यादा और morph का मतलब होता है प्रकार। इसे हम ऐसे समझ सकते है की एक नाम और कई सारे काम।

जैसे python में len() function होता है उसे आप string के लिए भी इस्तेमाल कर सकते है और list के लिए भी। len () function दोनों data type के लिए काम करेगा पर output अलग दे सकता है।

यही programming polymorphism कहलाता है। मतलब नाम एक है और काम अलग-अलग। 

Example

Implementation

polymorphism-in-oops-in-python

Final Thoughts

तो यह था oops concepts in python in Hindi अगर देखा जाये तो OOP (EAIP) से मिल कर बना हुआ है।

और यह बहुत बड़ा topic है अगर इसके एक-एक principle को ध्यान से देखे तो इन पर भी पुरे-पुरे आर्टिकल्स लिखे जा सकते है।

पर मैंने इस आर्टिकल में आपको theory के साथ-साथ OOPs के concepts को कैसे coding में implement करे वह सब भी बता दिया है।

और इस आर्टिकल से आपको अंदाज़ा लग ही गया होगा की oops के concepts कितना काम आसान कर देते है।

मैंने पूरी कोशिश की है इस आर्टिकल को कम से कम और आसान शब्दों में रखू

ताकि आप इसे आसानी से अपनी भाषा में सीख सके।

आशा करता हूँ की आपको यह oops concepts in python in Hindi आर्टिकल पसंद आया होगा।

अगर आपको यह जानकारी अच्छी लगी तो कृपया इसे अपने दोस्तों, सहपाठी-साथियो के साथ शेयर जरूर करे।

और अगर आप जानना चाहते ही की आप पाइथन को मुफ्त में कहा से सीख सकते हो

तो Free Platforms to learn Python और Top YouTube Channels to learn Python in Hindi इन आर्टिकल्स को जरूर देखे।

Also, Check Out These Articles:

Leave a Reply

Your email address will not be published. Required fields are marked *

error: Content is protected !!