البرمجة الشيئية — مفاهيم أساسية — السنة الثالثة ثانوي (بكالوريا) — شعبة تقني رياضي — الإعلام الآلي — المنهاج الجزائري
البرمجة الشيئية (Programmation Orientée Objet — POO) هي نمط برمجة يعتمد على مفهوم الكائنات (Objets) التي تحتوي على بيانات (خصائص) وسلوك (دوال). هذا الدرس ضمن مقرر الإعلام الآلي للسنة الثالثة ثانوي شعبة تقني رياضي.
أولاً: من البرمجة الإجرائية إلى البرمجة الشيئية
في البرمجة الإجرائية التقليدية (مثل Pascal)، البرنامج عبارة مجموعة من الدوال والإجراءات التي تعالج البيانات. في البرمجة الشيئية، تجمع الكائنات بين البيانات والوظائف التي تعالجها.
مزايا البرمجة الشيئية:
- إعادة الاستخدام (Réutilisabilité): يمكن إعادة استخدام الكائنات في برامج مختلفة.
- التوسع (Extensibilité): سهولة تعديل وتوسيع البرامج.
- الصيانة (Maintenance): سهولة تصحيح الأخطاء وتحديث البرامج.
- النمذجة (Modélisation): تقارب كبير بين نموذج البرمجة والعالم الحقيقي.
ثانياً: المفاهيم الأساسية للبرمجة الشيئية
1. الصف (Classe): نموذج أو قالب يصف بنية وسلوك الكائنات. يشبه المخطط (Blueprint).
2. الكائن (Objet): مثيل (Instance) للصف. له هوية وحالة وسلوك.
3. الخصائص (Attributs): المتغيرات التي تصف حالة الكائن.
4. الطرق (Méthodes): الدوال التي تحدد سلوك الكائن.
ثالثاً: مبادئ البرمجة الشيئية الأساسية
التغليف (Encapsulation): إخفاء البيانات الداخلية للكائن وجعل الوصول إليها مقصوراً على طرق محددة. يحقق باستخدام معدلات الوصول (public, private, protected).
الوراثة (Héritage): آلية تسمح لصف (فئة فرعية) باستخدام خصائص وطرق صف آخر (فئة أساسية). تشجع إعادة الاستخدام.
تعدد الأشكال (Polymorphisme): القدرة على استخدام نفس الواجهة (interface) لأنواع مختلفة من الكائنات.
رابعاً: مثال — صف مستطيل في لغة C++ (مثال توضيحي)
class Rectangle {
private:
double longueur;
double largeur;
public:
// المنشئ (Constructeur)
Rectangle(double l, double L) {
longueur = l;
largeur = L;
}
double surface() {
return longueur * largeur;
}
double perimetre() {
return 2 * (longueur + largeur);
}
};
// استخدام الصف
int main() {
Rectangle r(5.0, 3.0);
cout << "المساحة: " << r.surface() << endl;
cout << "المحيط: " << r.perimetre() << endl;
return 0;
}
خامساً: مثال بكالوريا
تمرين بكالوريا (دورة 2023): عرف صفاً باسم Voiture بالخصائص التالية: marque (نصي)، modele (نصي)، annee (صحيح)، vitesse (حقيقي). والطرق التالية:
- دالة منشئ (Constructor) لتهيئة الخصائص.
- دالة accelerer(delta) تزيد السرعة بمقدار delta.
- دالة freiner(delta) تنقص السرعة بمقدار delta (بشرط ألا تقل عن 0).
- دالة afficher() تبين معلومات السيارة.
الحل (شيفرة وصفية):
Classe Voiture
Attributs:
marque: Chaîne
modele: Chaîne
annee: Entier
vitesse: Réel
Méthodes:
Constructeur(m, mod, a):
marque ← m
modele ← mod
annee ← a
vitesse ← 0
accelerer(delta):
vitesse ← vitesse + delta
freiner(delta):
Si vitesse - delta >= 0 alors
vitesse ← vitesse - delta
Sinon
vitesse ← 0
Fin Si
afficher():
Ecrire("السيارة ", marque, " ", modele)
Ecrire("السنة: ", annee)
Ecrire("السرعة: ", vitesse, " km/h")
Fin Classe
خلاصة
البرمجة الشيئية هي النمط السائد في تطوير البرمجيات الحديثة. لغات مثل Java و C++ و Python و C# تدعم هذا النمط. فهم مبادئ البرمجة الشيئية أساسي لمبرمجي المستقبل.
دروس مشابهة
- الشبكات المنزلية — الإعلام الآلي — السنة الأولى متوسط — المنهاج الجزائري
- الإعلام الآلي — الحاسوب — السنة الأولى متوسط
- إنترنت الأشياء IoT — ربط الأجهزة بالإنترنت — الإعلام الآلي — السنة الرابعة متوسط
مدونة التربية و التعليم في الجزائر – دروس، فروض، نتائج امتحانات مدونة التربية والتعليم في الجزائر | تحضير الدروس، فروض واختبارات، نتائج البكالوريا وBEM، مسابقات التوظيف، والتوجيه المدرسي للطلاب وأولياء الأمور.