كل ما تحتاج لمعرفته حول البرمجة الشيئية في C ++

ستمنحك هذه المقالة مقدمة متعمقة لنهج البرمجة المتكرر وهو البرمجة الشيئية في C ++.

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

الشروع في العمل بهذه المقالة حول البرمجة الشيئية في C ++





ما هي البرمجة الشيئية؟

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

الانتقال إلى هذه المقالة حول البرمجة الشيئية في C ++



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

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

الانتقال إلى هذه المقالة حول البرمجة الشيئية في C ++

وظيفة التحميل الزائد في ++ C

شاء

الكائنات هي كيانات التشغيل والوسيط الأساسية في OOPs ، وقد تمثل بيانات المستخدم والوسيط مثل المتجهات والوقت والقوائم أو أي عنصر يجب على البرنامج التعامل معه. يتم تحليل مشكلة البرمجة على أساس الأشياء وطبيعة الاتصال فيما بينها. يجب تحديد الكائنات بحيث تتطابق بشكل وثيق مع كائنات العالم الحقيقي. تشغل الكائنات مساحة في الذاكرة وليس لها عنوان مرتبط. بينما تتفاعل كائنات التنفيذ عن طريق إرسال رسائل إلى بعضها البعض. على سبيل المثال ، إذا كان 'Student' و * Student_roll_no 'كائنين في أحد البرامج ، فقد يرسل كائن Student رسالة إلى كائن Student_roll_no يطلب فيه العلامات المرتبطة به. يحتوي كل كائن على رمز لمعالجة البيانات. يمكن أن تتفاعل الكائنات مع بيانات أو رمز بعضها البعض دون الحاجة إلى معرفة ذلك

الانتقال إلى هذه المقالة حول البرمجة الشيئية C ++



الطبقات

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

كمبيوتر محمول للإلكترونيات

سيؤدي ذلك إلى إنشاء كمبيوتر محمول كائن ينتمي إلى فئة الإلكترونيات.

الانتقال إلى هذه المقالة حول البرمجة الشيئية في C ++

طول جافا سكريبت للمصفوفة

التغليف

يمكن تعريف التغليف بأنه التفاف للبيانات والمعلومات في وحدة واحدة. في البرمجة الشيئية ، يُعرّف التغليف بأنه ربط البيانات والوظائف التي تتعامل معها معًا.

التغليف - البرمجة الشيئية في Cpp - Edureka

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

المضي قدما مع هذا المقال

التجريد

يشير التجريد إلى إظهار الميزات المهمة والمطلوبة للتطبيق وإخفاء التفاصيل فقط. في C ++ ، يمكن للفئات توفير البيانات والوظائف للعالم الخارجي للوصول إليها ، وإبقاء المتغيرات مخفية عن الوصول المباشر ، أو يمكن للفئات أن تعلن عن كل شيء يمكن الوصول إليه للجميع ، أو ربما فقط للفئات التي ترثها ، يمكننا تغييرها حسب المتطلبات.

يمكن القيام بذلك باستخدام محددات الوصول. يحتوي C ++ على 3 محددات وصول:

  • نشر
  • محمي
  • عامة

المضي قدما مع هذا المقال

تعدد الأشكال

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

يمكن أن تظهر العملية سلوكيات مختلفة حسب المتطلبات في حالات مختلفة. يعتمد السلوك على أنواع البيانات المستخدمة ومتطلباتها في العملية.

يدعم C ++ التحميل الزائد على المشغل والحمل الزائد للوظيفة.

  • زيادة تحميل المشغل: هي عملية جعل المشغل يعرض سلوكيات مختلفة في حالات مختلفة.
  • التحميل الزائد للوظيفة: يستخدم التحميل الزائد للوظيفة اسم وظيفة واحدة لأداء أنواع مختلفة من المهام.

يستخدم تعدد الأشكال على نطاق واسع في تنفيذ الوراثة.

الانتقال إلى هذه المقالة حول البرمجة الشيئية في C ++

ميراث

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

دمج خوارزمية الفرز c ++

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

وهكذا وصلنا إلى نهاية هذه المقالة حول 'البرمجة الشيئية في C ++'. إذا كنت ترغب في معرفة المزيد ، تحقق من بواسطة Edureka ، شركة تعليمية موثوقة عبر الإنترنت. تم تصميم دورة تدريب وإصدار شهادات Java J2EE و SOA من Edureka لتدريبك على مفاهيم Java الأساسية والمتقدمة جنبًا إلى جنب مع العديد من أطر Java مثل Hibernate & Spring.

لديك سؤال لنا؟ يرجى ذكر ذلك في قسم التعليقات في هذه المدونة وسنعاود الاتصال بك في أقرب وقت ممكن.