مطور Angular الشامل: من الصفر إلى الاحتراف
مطور Angular الشامل: من الصفر إلى الاحتراف
مرحباً بك في دورة تطوير Angular النهائية، المصممة للمبتدئين الذين يرغبون في إتقان الإطار وبناء تطبيقات صفحات أحادية قوية وقابلة للتوسع (SPAs). تبدأ هذه الرحلة الشاملة المكونة من 80 درساً بمتطلبات أساسية مثل TypeScript وإعداد البيئة، وتتقدم بسرعة عبر المفاهيم الأساسية مثل المكونات (Components)، والخدمات (Services)، وربط البيانات (Data Binding)، وتتوج بموضوعات متقدمة مثل RxJS، والنماذج التفاعلية (Reactive Forms)، وإدارة الحالة (مقدمة NgRx)، والاختبار (Testing)، والنشر للإنتاج (Production Deployment). بحلول نهاية هذه الدورة، لن تفهم بنية Angular فحسب، بل ستمتلك أيضاً المهارات العملية اللازمة لهندسة وتقديم حلول واجهة أمامية (front-end) ذات مستوى احترافي.
الدروس
- مقدمة إلى Angular وتطبيقات الصفحة الواحدة (SPAs)
- أساسيات TypeScript: الأنواع (Types) والواجهات (Interfaces)
- أساسيات TypeScript: الفئات (Classes) والمُزخرفات (Decorators)
- إعداد بيئة التطوير (Node, NPM, CLI)
- إنشاء وتشغيل أول تطبيق Angular
- فهم مساحة عمل Angular وهيكلة الملفات
- وحدات NgModules: اللبنات الأساسية
- تعمق في المكونات (Components)
- خطافات دورة حياة المكون (OnInit, OnDestroy)
- صيغة القالب (Template Syntax): الاستيفاء (Interpolation) {{ }}
- ربط الخاصية (Property Binding) [ ]
- ربط الأحداث (Event Binding) ( )
- ربط البيانات ثنائي الاتجاه [(ngModel)]
- مقدمة في توجيهات السمات المدمجة (NgClass, NgStyle)
- توجيهات الهيكلة المدمجة: *NgIf
- توجيهات الهيكلة المدمجة: *NgFor
- توجيهات الهيكلة المدمجة: *NgSwitch
- التعامل مع مدخلات المستخدم (متغيرات الإشارة إلى القالب)
- استخدام الأنابيب المدمجة (Date, Currency, Json)
- إنشاء أنابيب مخصصة
- فهم حقن التبعية (DI)
- مقدمة في الخدمات (Services)
- المُزودون (Providers) وتحديد النطاق (Scoping)
- مشاركة البيانات بين المكونات باستخدام الخدمات
- التحضير للتواصل مع الواجهة الخلفية: وحدة HttpClient
- إجراء طلبات GET (جلب البيانات للقراءة فقط)
- التعامل مع طلبات POST (إنشاء الموارد)
- إدارة طلبات PUT/DELETE (تحديث/حذف الموارد)
- معالجة الأخطاء في استدعاءات HTTP
- استخدام المعترضات (Interceptors) لتعديل الطلبات (مثل رؤوس المصادقة)
- إعداد موجه Angular (Router)
- تحديد المسارات الأساسية (Basic Routes)
- التنقل البرمجي والتنقل التعريفي (routerLink)
- فهم منفذ التوجيه (Router Outlet)
- الوصول إلى مُعلمات المسار (Snapshot مقابل Observable)
- المعلمات الاختيارية ومعلمات الاستعلام (Query Parameters)
- حراس المسار (Route Guards): CanActivate (التفويض)
- حراس المسار: CanDeactivate (ثبات النموذج)
- حماية المسارات الفرعية (CanActivateChild)
- التحميل الكسول (Lazy Loading) لوحدات الميزات
- مقدمة إلى النماذج (Forms) في Angular
- إعداد نماذج القوالب (TDF)
- نماذج القوالب (TDF): استخدام NgModel وعناصر التحكم في النموذج
- نماذج القوالب (TDF): الوصول إلى حالة النموذج وتقديمه
- النماذج التفاعلية (RF) الإعداد و FormControl
- النماذج التفاعلية (RF): استخدام FormGroup و FormArray
- التحقق المدمج في النماذج التفاعلية (Required, MinLength)
- تنفيذ أدوات التحقق المخصصة (Custom Validators)
- التعامل مع أدوات التحقق غير المتزامنة (Asynchronous Validators)
- النماذج الديناميكية باستخدام FormArray
- مقدمة في البرمجة التفاعلية (Reactive Programming) و RxJS
- الـ Observables مقابل الـ Promises: الاختلافات الرئيسية
- إنشاء الـ Observables والاشتراك بها
- العوامل المشتركة (Operators): map و filter
- العوامل المشتركة: tap و delay و catchError
- دمج الـ Observables: forkJoin و combineLatest
- الدمج المتقدم: switchMap (نمط HTTP)
- مقدمة إلى الـ Subjects (البث المتعدد)
- BehaviorSubject و ReplaySubject
- استخدام أنبوب Async للإدارة التلقائية للاشتراكات
- استراتيجية اكتشاف التغيير: الافتراضية مقابل OnPush
- التوجيهات المخصصة (الهيكلية والسمات)
- توجيهات الهيكلة المخصصة (تنفيذ *NgIf مخصص)
- إسقاط المحتوى (ngContent)
- تفاعل المكونات: المُزخرف Input
- تفاعل المكونات: Output و EventEmitter
- استخدام متغيرات الإشارة المحلية للتفاعل
- ViewChild و ContentChild (الوصول إلى العناصر/المكونات الداخلية)
- توجيهات السمات المخصصة (تغيير مظهر/سلوك العنصر)
- روابط المضيف (Host Bindings) ومستمعي المضيف (Host Listeners)
- مخططات Angular (Schematics) والتوليد المخصص
- مقدمة في إدارة الحالة (الحاجة إلى NgRx/Akita)
- أساسيات الاختبار: الإعداد و TestBed
- اختبار وحدات المكونات (الاختبار الضحل)
- اختبار الخدمات والنماذج الوهمية لحقن التبعية (Mocks)
- اختبار سيناريوهات التوجيه
- نظرة عامة على اختبارات النهاية إلى النهاية (E2E)
- أساسيات التدويل (i18n)
- البناء للإنتاج: تجميع AOT والتجميع في حزم (Bundling)
- استراتيجيات النشر (نظرة عامة على CI/CD ومثال عملي للنشر)