دروس بايثون 5: البرمجة الشيئية: برنامج تعليمي
يشارك
تبدأ رحلتنا إلى البرمجة الشيئية
مرحبا اصدقاء! بعد تعلم أنواع البيانات الأساسية والمتغيرات والعبارات الشرطية والحلقات والوظائف والقوائم والقواميس وعمليات الملفات في بايثون، أصبحنا الآن جاهزين للدخول إلى عالم البرمجة الشيئية (OOP).
يعد OOP نموذجًا برمجيًا قويًا يستخدم لتطوير البرامج الكبيرة والمعقدة. يحاكي هذا النموذج كائنات العالم الحقيقي، مما يجعل التعليمات البرمجية قابلة لإعادة الاستخدام بشكل أكثر انتظامًا وأسهل في الصيانة.
المفاهيم الأساسية لـ OOP: الكائنات والفئات
حجر الزاوية في OOP هي الكائنات والفئات. الفئة عبارة عن قالب من الكائنات ذات الخصائص والسلوك المتشابه. الكائن هو مثيل لفئة. خذ فئة "السيارة" على سبيل المثال. قد تحتوي هذه الفئة على ميزات مثل رقم العجلة وعلامة اللون والسلوكيات مثل التسارع والكبح. تعتبر سيارة "BMW" أو "Ford" مثالاً على فئة "Car".
الفئات والكائنات: مثال عملي
فيما يلي مثال لإنشاء فئة وكائن في بايثون:
```بايثون فئة السيارة: """فئة السيارة.""" def __init__(لون نموذج الصنع الذاتي): """تهيئة كائن السيارة.""" self.brand = العلامة التجارية self.model = model self.color = color def info_show(self): """يظهر معلومات السيارة.""" print(f"العلامة التجارية: {self.brand}") print(f"الموديل: {self.model}") print(f"اللون: {self.color}") # إنشاء كائن من الفئة Car mycar = Car("BMW" "5 Series" "Black") # عرض معلومات حول السيارة mycar.show_info() ```
في هذا المثال، قمنا بتعريف فئة تسمى Car . يتم استدعاء الأسلوب __init__() عند إنشاء مثيل للفئة وتهيئة خصائص الكائن. تقوم طريقة info_show() بطباعة معلومات السيارة على الشاشة.
4 ميزات رئيسية لـ OOP: وراثة تجريد التغليف وتعدد الأشكال
يحتوي OOP على أربع ميزات رئيسية تجعل التعليمات البرمجية أكثر قابلية لإعادة الاستخدام وأسهل في الصيانة:
التغليف: التغليف هو عملية دمج البيانات والأساليب في وحدة واحدة.
على سبيل المثال، في فئة "السيارة"، سيتم تغليف البيانات مثل عدد العجلات واللون والعلامة التجارية والأساليب مثل التسارع والكبح. وهذا يمنع تغيير البيانات عن طريق الخطأ ويجعل الكود أكثر أمانًا.
التجريد: التجريد هو عملية إخفاء البنية الداخلية المعقدة لكائن ما وإظهار الميزات والسلوكيات المهمة فقط.
على سبيل المثال، في فئة "السيارة"، يرى المستخدم فقط وظائف السيارة مثل التسارع والكبح والتوجيه، ولا يحتاج إلى معرفة الآلية الداخلية للسيارة.
الوراثة: الوراثة هي عملية نقل الميزات والأساليب من فئة إلى فئة أخرى.
على سبيل المثال، يمكن أن ترث فئة "SportCar" من فئة "Car" وإضافة خاصية إضافية مثل "turbo" أو أسلوب مثل "turbo_ac".
تعدد الأشكال: يسمح تعدد الأشكال بتنفيذ نفس الطريقة المسماة بشكل مختلف بواسطة فئات مختلفة.
على سبيل المثال، قد تكون هناك طريقة تسمى "التسريع" في فئتي "Car" و"SportCar"، ولكن يمكن تنفيذ هذه الطريقة بشكل مختلف بواسطة كلا الفئتين.
فوائد OOP: رموز أكثر قوة ومرونة وقابلة لإعادة الاستخدام
استخدام OOP يجعل الكود أقوى وأكثر مرونة وأكثر قابلية لإعادة الاستخدام.
قوي: يسمح OOP بأن تكون التعليمات البرمجية أكثر تنظيماً ونمطية. وهذا يجعل من السهل العثور على الأخطاء وإصلاحها.
مرنة: تسمح OOP بأن تكون التعليمات البرمجية أكثر مرونة. لأنه يمكن استخدام الميراث بين الفئات ويمكن إنشاء فئات جديدة بسهولة.
قابلة لإعادة الاستخدام: OOP يجعل التعليمات البرمجية أكثر قابلية لإعادة الاستخدام. لأنه يمكن استخدام الفئات مرارًا وتكرارًا في أجزاء مختلفة من البرنامج.