or
यह अभ्यास पाठ्यक्रम का हिस्सा है
Object-oriented programming की बुनियादी बातें दोहराएँ, और overloading का उपयोग करके Python ऑपरेटर्स की functionality अनलॉक करें. Multiple और multilevel inheritance लागू करने वाली classes डिज़ाइन और बिल्ड करें.
Type hinting के साथ अपने Python स्किल्स को level-up करें. ऐसे magic methods बनाना अभ्यास करें जो किसी ऑब्जेक्ट के namespace के बाहर attribute एक्सेस करने के प्रयासों को handle करें, या किसी attribute के सेट होने के तरीके को customize करें. ऐसे descriptors बनाएँ जो किसी attribute के स्टोर, retrieve या delete होने के तरीके को नियंत्रित करें, और अपने custom iterators बनाएँ ताकि ऑब्जेक्ट्स के कलेक्शन या डेटा स्ट्रीम को traverse कर सकें.
वर्तमान अभ्यास
Abstract base classes का उपयोग करके Python classes के लिए "blueprints" बनाना सीखें. जाँचें कि interfaces कैसे ऐसे contracts बनाते हैं जिन्हें दूसरी classes पूरा करती हैं. Interfaces का लाभ उठाएँ और factory method design pattern का उपयोग करके classes बनाएँ.