الأهداف العامة للدورة
- تعريف المشاركين بأساسيات تطوير تطبيقات الجوال عبر تقنيات Flutter وReact Native.
- تمكين المشاركين من بناء واجهات مستخدم احترافية وتفاعلية باستخدام أدوات التصميم في كلا الإطارين.
- تدريب المشاركين على التعامل مع البيانات، التنقل بين الشاشات، والتكامل مع قواعد البيانات والخدمات السحابية.
- توضيح الفروق والاختيارات بين Flutter (بلغة Dart) وReact Native (بلغة JavaScript).
- تطوير تطبيق جوال عملي من البداية حتى النشر على متاجر التطبيقات.
- تمكين المشاركين من اتباع أفضل ممارسات الأداء والأمان في تطوير التطبيقات متعددة المنصات.
محاور البرنامج التدريبي
اليوم الأول: مدخل إلى تطوير تطبيقات الجوال متعددة المنصات
- مفهوم التطوير الهجين مقابل التطوير الأصلي (Hybrid vs Native).
- مقارنة بين Flutter وReact Native: الميزات، الأداء، بيئة التطوير.
- إعداد بيئة العمل: تثبيت الأدوات والمحررات (VS Code, Android Studio).
- إنشاء مشروع جديد في كل من Flutter وReact Native.
- هيكل المشروع الأساسي ومكوناته.
اليوم الثاني: بناء واجهات المستخدم (UI) الأساسية
- مكونات واجهة المستخدم الأساسية: أزرار، نصوص، صور، قوائم.
- التخطيط والتنسيق (Layout) باستخدام:
- Flutter: Widgets، Row، Column، Container.
- React Native: View، Text، StyleSheet، Flexbox.
- تصميم واجهات متجاوبة تناسب الشاشات المختلفة.
- استخدام مكتبات جاهزة لتحسين التصميم (مثل Material وNativeBase).
اليوم الثالث: التنقل وإدارة الحالة (Navigation & State)
- التنقل بين الشاشات:
- Flutter: Navigator وRoutes.
- React Native: React Navigation.
- تمرير البيانات بين الشاشات.
- مبادئ إدارة الحالة:
- Flutter: setState، Provider (كمقدمة).
- React Native: useState، Context API.
- بناء تطبيق متعدد الشاشات مع انتقال سلس.
اليوم الرابع: ربط التطبيق بالبيانات والخدمات
- جلب البيانات من الإنترنت باستخدام API (JSON + HTTP).
- التعامل مع قواعد بيانات محلية (SQLite، Hive، أو Realm).
- التخزين المحلي:
- SharedPreferences (Flutter)
- AsyncStorage (React Native)
- التكامل مع خدمات خارجية (مثل Firebase).
- التعامل مع الأخطاء وتحسين الأداء.
اليوم الخامس: مشروع تطبيقي ونشر التطبيق
- تصميم وتطوير تطبيق بسيط (مثال: تطبيق مهام أو مدونة مصغّرة).
- تنفيذ جميع الميزات من التصميم إلى التفاعل والربط بالبيانات.
- اختبار التطبيق على Android وiOS.
- خطوات تجهيز التطبيق للنشر على Google Play وApp Store.
- مراجعة ختامية ونقاش حول التخصص في أحد الإطارين مستقبلاً.