نظام تسجيل الطلاب
هذا المشروع عبارة عن نظام تسجيل الطلاب مبني باستخدام Java Swing وطورته باستخدام NetBeans. يسمح النظام للمستخدمين إدخال بيانات الطلاب، تأكيدها، وعرضها من خلال واجهة رسومية (GUI) منظمة، باستخدام مبادئ البرمجة الكائنية (OOP).
هيكل المشروع
الكود منظم في حزم (Packages) كالتالي:
base: تحتوي على الكلاس المجرد StudentData الذي يحدد الخصائص المشتركة للطلاب (مثل الاسم، العمر، التخصص) مع طرق الوصول لها (getters).
interfaces: تحتوي على واجهة FormActions لتحديد سلوك الأزرار في النموذج.
panels: تحتوي على شاشات الواجهة الرسومية مثل StartPanel, FormPanel, ConfirmPanel, ThankYouPanel.
main: تحتوي على MainFrame الذي يستخدم CardLayout للتحكم في التنقل بين الشاشات.
شرح المكونات الأساسية
StudentData.java (base): كلاس مجرد يحتوي على الحقول المحمية (الاسم، العمر، التخصص) مع constructor وطرق getter. كما يعرف طريقة مجردة displayData().
FormActions.java (interfaces): واجهة تحتوي على طرق لمعالجة أحداث النموذج مثل الإرسال (submit) وإعادة الضبط (reset).
StartPanel.java: الشاشة الأولى تحتوي على رسالة ترحيبية وزر للانتقال للشاشة التالية.
FormPanel.java: شاشة لإدخال البيانات (الاسم، العمر، التخصص) باستخدام حقول نصية.
ConfirmPanel.java: شاشة لعرض البيانات المدخلة لتأكيدها.
ThankYouPanel.java: الشاشة النهائية لشكر المستخدم.
MainFrame.java: الإطار الرئيسي الذي يتحكم بالتنقل بين الشاشات باستخدام CardLayout.
الميزات المستخدمة
الكلاس المجرد (Abstract Class): في StudentData.java لتحديد البيانات المشتركة للطلاب.
الواجهة (Interface): FormActions لضمان سلوك ثابت للنموذج.
مديري التخطيط (Layout Managers): CardLayout للتنقل بين الشاشات، وGridLayout/FlowLayout لتصميم النموذج.
فصل المنطق عن الواجهة (Separation of Concerns): تم فصل منطق البرنامج عن عناصر الواجهة بشكل منظم باستخدام الحزم.