القائمة الرئيسية

الصفحات

أخر المواضيع

ماهي البرمجة كائنيه التوجة oop و تعريف الكائن ومميزات وعيوب و الوراثة في البرمجة الكائنية

البرمجه الكائنيه Object-Oriented Programming

البرمجه الكائنيه Object-Oriented Programming : إذا كنت مبرمج فيجب عليك أن تتعرف على البرمجة الكائنية، والتي تعرف باسم الأوب oop، وعلى الرغم من أنها لا تعتبر لغة برمجة محددة، إلا أن لها أهمية كبيرة يجب أن تتطلع عليها، وسوف نذكرها في مقالنا اليوم.

تعريف الكائن في البرمجة .

هناك بعض التعريفات التي يجب أن تتعرف عليها، من ضمن تلك التعريفات هو الكائن، ويُعرف كما يلي:

  • مجموعة من البيانات والمعلومات التي تتميز بأن لها خصائص وسمات محددة.
  • جميع ما حولنا يعتبر كائن، على سبيل المثال المكتب هو عبارة عن كائن والسيارة كذلك وغيرها من أشياء أخرى.
  • الكائن جميع ما حولها، ولكن بشرط أن الكائن يمكن تمثيله بلغات برمجة.

الكائن في البرمجة : يمتلك 3 صفات وهما identity وهي الصفة المميزة التي تجعله فريد ومميز عن الكائنات الأخرى ،state وهي حالة البيانات المتواجد فيها الكائن ،behavior هي وصف الطريقة التي سوف يسلكها المبرمج للاستخدام هذا الكائن.

أمثلة عن الكائن في البرمجة .

هناك بعض الأمثلة التي سوف نذكرها توضح لك ما هو الكائن بشكل أعمق، ومن تلك الأمثلة ما يلي:

  • العاب البطل والشرير، حيث عندما تلعب تجد الشرير يظهر لك في أماكن عديدة في وقت أقل من الثانية، هل تسائلت يومًا كيف يظهر لك الشرير بتلك الطريقة؟. ذلك الشرير هو كائن والمبرمج قام بصنعه من خلال البرمجة الكائنية، عن طريق أنه يصنع من الشرير أكثر من نسخة بنفس الكود المستخدم في صنعه.
  • إذا رأيت في لعبة المطر يهطل، وإذا قمت بالتدقيق قليلًا فسوف ترى بأنها نفس القطرة ومتكررة عدة مرات، وذلك لأن المبرمج قام بصنع كود لسقوط الكائن وهو القطرة واستخدم البرمجة الكائنية في تكرارها.

مبادئ البرمجة الكائنية oop .

مبادئ البرمجة الكائنية oop .

إن البرمجة الكائنية تتكون من 4 مبادئ أساسية وهما كما يلي:

1- الوراثة :

  • من أفضل مبادئ البرمجة الكائنية؛ نظرًا لأنها تستطيع حل المشكلة بكل سهولة.
  • توفر تكرار الأكواد، مما توفر وقت ومجهود للمبرمج.
  • تدور الفكرة الرئيسية للوراثة على أنها تجمع كل المشترك في classes المتواجدين في الكود، وتضعه في الكلاس الأب، أي أول كلاس متواجد في الكود، حيث يطلق عليه مصطلح (أب)، والباقي يطلق عليهم مصطلح (الأبناء).

2- التغليف :

  • إذا كنت ترغب في عدم إظهار البيانات المتواجدة في كلاس محدد، فذلك المبدأ يتيح لك ذلك.
  • يحدد لنا ما نرغب في ظهوره وما لا نرغب في ظهوره.
  • لا يوجد كود يخلو من التغليف، خاصة في حالة قيامك بالوراثة، حيث عندما تنشأ كود يحتوي على وراثة فأنت مطالب بأن تضم جميع الفنكشن وattributes المتواجدين في الكلاسات.
  • لذا فإذا كنت ترغب في عدم إنضمام بعض الفنكشن أو attributes في الوراثة، فتقوم بالتغليف.

3- التجريد :

  • من أفضل المبادئ التي تسهل على المبرمج كتابة الكود.
  • تسهل كتابة الكود عن طريق إنشاء فنكشن نضع لها parameter يكون مشير إلى كلاس.
  • Polymorphism
  • إنشاء function تقوم بتنفيذ أوامر متعددة ومتنوعة.
  • تنفذ الأمر تبعًا لأي object يدخل لها عن طريق كونه argument.

فوائد البرمجه الكائنيه oop .

فوائد الأوب oop عديدة، ومن ضمن تلك الفوائد ما يلي:

  1. توفر إنشاء كلاس له سلوك متنوع، لا يجب أن يرتبط مع الأخرين بالوراثة، وذلك عن طريق polymprphism.
  2. تصبح المعلومات والبيانات أكثر أمانًا، وذلك عن طريق مبدأ التغليف.
  3. يسهل التعرف على الخطأ المتواجد في الكود، في حالة تواجد خطأ ما.

ماهي اللغات التى تعمل بالبرمجة الكائنية ؟

ليست كل لغات البرمجة تتيح البرمجة الكائنية، ولكن الأغلبية يتيحوا ذلك، ومن ضمن تلك اللغات ما يلي:

ماهي مميزات البرمجة الكائنية oop ؟

من مميزات البرمجة الكائنية ما يلي:

  • تصحيح الأخطاء المتواجدة في الكود، حيث إذا كان هناك خطأ وأنت لا تعلم أين يقع : لذا البرمجة الكائنية تقوم بتوجيهك نحو الملف الذي به خطأ؛ نظرًا لأن عند كتاتبك لكود برمجي كبير تتعامل مع العديد من الملفات، لذا من الأسهل أن توجهك البرمجة الكائنية نحو الخطأ.
  • تسمح للمبرمجين إنشاء كود يحتوي على كائنات متعددة، دون أن يدخل الكائن في وظيفة الكائن الأخرى، بل كل واحد له دور ووظيفة معينة لا يتعداها.
  • توفير الوقت وإعادة استعمال الكود مرة أخرى بدلًا من كتابته، وذلك يتم عن طريق الوراثة، حيث إذا كنت تريد كائن سيارة وصديقك يريد كائن لنوع سيارة آخر.
  • تقوموا بإنشاء كلاس واحد لسيارة، وتقوم بأخذ object  لنوع السيارة الذي تريده وصديقك أيضًا، وإذا لم تكن تريد ذلك وتريد إضافة بعض خصائص كل سيارة، فتقوم بإنشاء كلاس رئيسي بجميع المواصفات لكي تتوارثونه.

البرمجة الكائنية هي أفضل الطرق الطبيعية، على نظير البرمجة الأخرى، على الرغم من أن هناك الكثير من اللغات التي لها مستوى عالي مثل لغة لغة سي، إلا أن البرمجة الكائنية تقسم الكود تبعًا إلى الكائنات ثم تحدد المشكلات ثم تحلها، مما تُسهل الموضوع كثيرًا على المبرمج.

ماهي عيوب البرمجة الكائنية opp ؟

هناك بعض العيوب الي تتواجد في البرمجة الكائنية، وهي كما يلي:

  • نظرًا لأنها تحل المشكلات وتوفر وقت ومجهود للمبرمج، مما تؤدي إلى أنه لا يستطيع التعلم من أخطائه بشكل جيد، حيث توفر عليه مشقة البحث عن الخطأ وما هو الحل لذلك.
  • تزيد من حجم البرامج عن المعدل الطبيعي لها : مع زيادة الحجم تصبح البرامج أبطأ عند تنفيذ أمر ما.
  • أسلوب البرمجة الكائنية ليس الحل المثالي لجميع المشاكل، حيث هناك بعض الأنواع من المشكلات التي لا تتناسب مع ذلك النوع ويجب حلها بالأسلوب التقليدي المنطقي.

الوراثه في البرمجة الكائنيه oop !

ذكرنا مسبقًا ماذا تعني الوراثة، ولكن هناك بعض الأمور المهمة التي يجب معرفتها عنها، ومن تلك الأمور ما يلي:

مصطلحات الوراثة في البرمجة الكائنية التوجه 

  • سوبر كلاس وهو يطلق للكلاس الرئيسي الذي سوف يتوارثوا جميع صفاته.
  • سب كلاس (sub class) وهو يطلق للكلاس الفرعي الذي سوف يأخذ صفات الكلاس الأساسي، وهو كلاس يضم جميع صفات كلاس الأب مع صفة فريدة له. 
  • يسمح للكلاس الفرعي إنشاء function لتلك الصفة الفريدة.

أنواع الوراثة في البرمجة الكائنية oop !

  • فردية: كلاس رئيسي وهو كلاس الأب سوف يُورث من قبل كلاس الابن.
  • متعددة المستوى: مجموعة من الكلاسات الفرعية المتعددة التي سوف ترث من كلاس رئيسي واحد، ويطلق عليها أيضًا اسم أخر وهو الوراثة الهرمية.
  • متعددة: كلاس ابن يرث من العديد من كلاسات الأب.
  • الهجينة: جمع أكثر من نوع من الوراثة في نوع واحد فقط.

مميزات الوراثة في البرمجة الكائنية  oop !

  • إعادة استعمال الكود أكثر من مرة.
  • إتاحة التسلسل الهرمي، بحيث يُستعمل الكلاس الأب أكثر من مرة.
  • التغييرات تصبح بسيطة للغاية، حيث كل ما عليك إنشاء إضافة التغيير الذي تريده أو الصفة التي تريدها في كلاس الابن، وكلاس الأب لا يتغير.
  • عدم تكرار البيانات، مما تقل من مساحة البرنامج وتوفر الوقت.

البرمجة الكائنية هي أسلوب في كتابة الأكواد البرمجية، لكي تسهل على المبرمج الكود، ولها عدة مبادئ قمنا بذكرها سابقًا، وختامًا إن تلك الطريقة تجعلك تبذل مجهود قليل عن غير الطبيعي، لذا فهي فعالة ومن أفضل الطرق.

تعليقات