نظرة عامة على الهندسة المعمارية
يتبع المشروع بنية نظيفة وهيكل يركز على الميزات أولاً لضمان قابلية التوسع والاختبار والصيانة.
بنية الدليل
lib/core/: منطق مشترك، ومواضيع، ومكونات، وتكوينات الشبكة.
components/: عناصر واجهة المستخدم القابلة لإعادة الاستخدام (زر التطبيق، بطاقة التطبيق، إلخ).
theme/تعريفات نظام التصميم (AppTheme، AppColors).
middleware/: حراس الملاحة والتحكم في الوصول القائم على الأدوار.
config/: تكوينات وقت الإنشاء (DEMO_MODE).
lib/features/: ميزات خاصة بالمجال.
auth/منطق المصادقة وواجهات تسجيل الدخول.
exam/: شاشات عرض معلومات الاختبار، وشاشات البناء، وشاشات التفاصيل.
room/إدارة الغرف ولوحات معلومات الطلاب.
reports/لوحات معلومات التحليلات والمراقبة.
lib/routes/إدارة المسارات المركزية.
إدارة الدولة
نستخدم GetX من أجل:
حقن التبعية : روابط لوحدات التحكم والخدمات.
إدارة الحالة : البرمجة التفاعلية مع خاصية الحفظ التلقائي Obxومن Workerأجلها.
التوجيه : مسارات مُسماة مع دعم البرامج الوسيطة.
الأمان (مكافحة الغش)
نظام أندرويد : FLAG_SECUREلمنع التقاط لقطات الشاشة/تسجيل الشاشة.
نظام التشغيل iOS : اكتشاف التقاط الشاشة عبر AppDelegate.
Flutter : اكتشاف فقدان التركيز لتتبع WidgetsBindingObserverمتى يغادر الطالب التطبيق.