بايثون هي لغة برمجة مفسرة وموجهة للكائنات. بفضل هياكل البيانات المضمنة عالية المستوى والكتابة الديناميكية، فقد اشتهر بالتطوير السريع للتطبيقات الجديدة وكذلك البرمجة النصية لدمج المكونات الموجودة المكتوبة بلغات مختلفة.
يؤكد بناء جملة بايثون البسيط وسهل التعلم على سهولة القراءة وبالتالي تقليل تكلفة وتعقيدات صيانة البرنامج على المدى الطويل. وهو يدعم حزمًا متنوعة لاحتواء التعليمات البرمجية، مما يشجع نمطية البرنامج وإعادة استخدام التعليمات البرمجية. يتوفر مترجم Python والمكتبة القياسية الشاملة مجانًا لجميع المنصات الرئيسية.
تم تصميم كل لغة برمجة في الأصل لحل مشكلة أو عيب معين. تم تطوير لغة Python لأن Guido van Rossum وفريقه وجدوا أن التطوير في نصوص C وUnix Shell أمر مرهق. كان التطوير في هذه اللغات بطيئًا، واستغرق الأمر وقتًا حتى بالنسبة للمهندسين ذوي الخبرة لفهم التعليمات البرمجية التي لم يروها من قبل.
يتيح لك تعلم لغة بايثون إنشاء أنواع مختلفة من البرامج ويعني أيضًا أن مستخدمها لديه مجموعة جديدة من الأدوات والميزات المتاحة. يمكن لبايثون القيام بالعديد من الأشياء بما في ذلك على سبيل المثال لا الحصر:
على شبكة الإنترنت
غير مستندة إلى الويب
مراجع:
حول بايثون
السنوات الأولى لبايثون (جويدو فان روسوم)
البرمجة الموجهة للكائنات (OOP) هي نموذج برمجة يعتمد على مفهوم الكائنات ، والتي يمكن أن تحتوي على بيانات، في شكل حقول، والتي تسمى السمات أو الخصائص، والتعليمات البرمجية، في شكل إجراءات تسمى الوظائف أو الأساليب. يؤكد OOP على بنية البيانات وأن يتمكن المستخدم من هيكلة التعليمات البرمجية بحيث يمكن مشاركة وظائفها في جميع أنحاء التطبيق. وهذا يتعارض مع البرمجة الإجرائية، حيث يتم بناء البرامج بترتيب تسلسلي ويتم استدعاء الإجراءات أو استدعاؤها عند مشاركة تسلسل محدد من البيانات وإعادة استخدامها داخل البرنامج.
مراجع:
البرمجة الشيئية في بايثون
الاختلافات بين البرمجة الشيئية والبرمجة الإجرائية
إليك بعض المصطلحات الأساسية ذات الصلة بـ OOP وسيتم توضيحها من خلال الأمثلة لاحقًا في هذه المقالة.
الفئات والمثيلات:
الفصل عبارة عن مخطط لإنشاء مثيلات تُعرف أيضًا باسم الكائنات التي تشترك في خصائص وسلوكيات مماثلة. فهو يحدد مجموعة من السمات والأساليب المعروفة أيضًا باسم الوظائف التي يمكن أن تمتلكها الكائنات وتؤديها.
يعمل الفصل كقالب أو بنية تسمح لك بإنشاء مثيلات متعددة للكائنات بنفس الخصائص والسلوكيات. ولذلك، فهو يقوم بتغليف البيانات والوظائف في وحدة واحدة، مما يعزز إمكانية إعادة استخدام التعليمات البرمجية وتنظيمها.
إليك مثال لفئة الحيوانات الأليفة:
class Pet: def __init__(self, name, species): self.name = name self.species = species def introduce(self): print(f"Hi, my name is {self.name} and I am a {self.species}.") def eat(self, food): print(f"{self.name} is eating {food}.")
طرق المثيل
في المثال أعلاه، تحتوي فئة Pet على ثلاث طرق:
my_pet = Pet("Max", "dog") my_pet.introduce() # Output: Hi, my name is Max and I am a dog. my_pet.eat("bones") # Output: Max is eating bones.
طريقة init()- هي طريقة خاصة تسمى المُنشئ. يتم تنفيذه تلقائيًا عند إنشاء مثيل جديد لفئة Pet. يقوم بتهيئة الاسم وسمات الأنواع لكل مثيل.
تطبع طريقة الإدخال () رسالة لتعريف الحيوان الأليف باسمه ونوعه.
تأخذ طريقة Eat () معلمة وطعامًا وتطبع رسالة تشير إلى أن الحيوان الأليف يأكل الطعام المحدد.
لاحظ أنه يمكن إنشاء مثيلات متعددة لفئة الحيوانات الأليفة وسيكون لكل مثيل اسم خاص به وسمات الأنواع.
صفات
يوضح الجدول أدناه بعض السمات المحتملة التي قد يمتلكها حيوان أليف من فئة الحيوانات الأليفة.
فئة الحيوانات الأليفة:
بطاقة تعريف | اسم | عمر | صِنف |
---|---|---|---|
1 | كولين | 5 | كلب |
2 | مشاكس | 2 | كلب |
3 | شعيرات | 11 | قطة |
تتوافق الأعمدة المختلفة مع سمات أو خصائص مختلفة، أي أجزاء من البيانات التي تمتلكها جميع الحيوانات الأليفة ولكنها قد تكون مختلفة بين كل حيوان أليف على حدة. فيما يلي مثال لفئة الحيوانات الأليفة مع المعرف والاسم والعمر والأنواع كسمات.
class Pet: def __init__(self, id, name, age, species): self.id = id self.name = name self.age = age self.species = species
يمكن إجراء الاتصال بالحيوانات الأليفة المختلفة أو إنشاء مثيل لها على النحو التالي.
# Creating instances of Pet class dog1 = Pet(1, “Colleen", 5, "dog”) dog2 = Pet(2, “Rowdy", 2, “dog”) cat3 = Pet(3, “Whiskers”, 11, “cat")
بعض الفوائد الرئيسية لـ OOP هي:
النمطية وقابلية إعادة الاستخدام: يسمح لك OOP بتقسيم التعليمات البرمجية الخاصة بك إلى كائنات معيارية أصغر. يمكن إعادة استخدام هذه الكائنات في أجزاء مختلفة من برنامجك أو في برامج أخرى، مما يعزز إمكانية إعادة استخدام التعليمات البرمجية ويقلل التكرار.
التغليف: يقوم OOP بتغليف البيانات والوظائف في كائنات، مما يساعد على تنظيم وإدارة قواعد التعليمات البرمجية المعقدة. فهو يسمح للمطور بإخفاء تفاصيل التنفيذ الداخلي للكائن والكشف فقط عن واجهة نظيفة للتفاعل معه.
قابلية الصيانة: يعمل OOP على تعزيز بنية التعليمات البرمجية الواضحة والمنظمة. يمكن فهم الكائنات وتفاعلاتها وتعديلها بسهولة، مما يسهل صيانة التعليمات البرمجية وتصحيح الأخطاء فيها.
الوراثة وتعدد الأشكال: يتيح لك الوراثة إنشاء فئات جديدة بناءً على الفئات الموجودة، وراثة سماتها وسلوكياتها. وهذا يعزز إعادة استخدام التعليمات البرمجية ويساعد على إنشاء هيكل هرمي للفئات. يسمح تعدد الأشكال باستخدام كائنات من فئات مختلفة بالتبادل، مما يوفر المرونة وقابلية التوسع.
المرونة وقابلية التوسع: يوفر OOP أسلوبًا مرنًا وقابلاً للتطوير للبرمجة. يمكنك بسهولة إضافة ميزات جديدة عن طريق إنشاء فئات جديدة أو تعديل الفئات الموجودة، دون التأثير على أجزاء أخرى من التعليمات البرمجية الخاصة بك.
التعاون: يعزز OOP التعاون بين المطورين من خلال توفير بنية ومصطلحات مشتركة لتصميم البرامج وتنفيذها. فهو يسمح لمطورين متعددين بالعمل على أجزاء مختلفة من البرنامج في وقت واحد، وذلك باستخدام فهم مشترك للكائنات وتفاعلاتها.
الاختبار والتصحيح: OOP يجعل الاختبار والتصحيح أسهل. يمكن اختبار الكائنات بشكل فردي، مما يسهل عزل المشكلات وإصلاحها. بالإضافة إلى ذلك، يشجع OOP استخدام التعليمات البرمجية المعيارية والمترابطة بشكل فضفاض، مما يسهل كتابة اختبارات الوحدة.
نظرًا لجميع مزايا OOP في Python في القسم السابق والتي تساهم في كتابة تعليمات برمجية أكثر تنظيمًا وقابلية للصيانة وقابلة للتطوير، والتي يمكن أن تحسن الإنتاجية وجودة التعليمات البرمجية.
تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.
Copyright© 2022 湘ICP备2022001581号-3