اريد شرحا للبرمجة كائنية التوجه
و كيف للغة برمجة ان تقوم باكثر من عمل مثل html مواقع و العاب....
دعنا نتناول النقاط بترتيبها الصحيح.
لغة HTML هي لغة اظهار وتنسيق وليست لغة برمجة أبدًا. فهي لغة مُعرفة ببعض القواعد والعناصر ( الوسوم ) مثل وسم B لجعل الخط غامق، وسم table لرسم جدول وما إلى ذلك.
وقبل الدخول في البرمجة كائنية التوجه دعني أشرح لك البرمجة وآلية تنفيذ البرامج في الحاسب.
جميع الملفات سواءً كانت ملف وورد, PDF أو إكسل نقرأها كمستخدمين من الأعلى إلى الأسفل، صحيح? نفس الشيء بالنسبة للحاسب, هو يقرأ الملف البرمجي من الأعلى إلى الأسفل.
لو فرضنا البرنامج التالي
عرّف المتغير فراس بقيمة 2
عرّف المتغير محمد بقيمة 3
اطبع لي المتغير فراس ثم محمد.
اطبع لي المتغير سامر
عرّف المتغير سامر بقيمة 5
عندما يبدأ الحاسب بالتنفيذ سوف يخزّن في الذاكرة متغير باسم فراس وقيمته 2, نفس الشيء بالنسبة لمحمد بقيمة 3, ثم عندما يأتي أمر الطباعة يذهب إلى الذاكرة ويبحث عن قيمة فراس ومحمد ويقوم بطباعة 2 و3 على الترتيب. ينتقل بعدها لطباعة المتغير سامر, سيذهب إلى الذاكرة ولن يجده لأنه غير معرّف. صحيح أن السطر الذي يليه يحتوي على تعليمة عرّف المتغير سامر ! لكن الحاسب يقرأ البرامج سطر بسطر ولا يمكنه التكهن لوحده.
ولحل هذه المُشكلة جاءت البرمجة كائنية التوجه, هي لها استخدامات كثيرة وأعقد من مثالي بكثير لكنها بشكل أو بآخر جاءت لتخلّص المُستخدم من ضرورة كتابة كل شيء سطر بسطر.
طبعًا استخداماتها كثيرة مثل إنشاء صف أو دعنا نقول قالب لبعض الأمور المُتكررة، تخيّل أنك مُصمم كروت شخصية وتعمل بشكل يومي على كرت جديد لزبائنك. هل ستقوم كل يوم بفتح فوتوشوب وإنشاء ملف جديد وتحديد أبعاده وتحديد بعض الخصائص الخاصّة بالكرت? بكل تأكيد لا ! سوف تنشء قالب بأبعاد وخصائص مُحددة وكل مرة تُريد إنشاء كرت لزبون جديد تقوم بنسخ هذا القالب :) وهذا هو تمامًا واحد من استخدامات البرمجة كائنية التوجه OOP.
قد يكون شرحي غريب بعض الشيء, لكن الأخوة هنا سوف تساعدك لا تقلق.
التعليقات