عن هذه الدورة
دورة بناء واجهات البرمجة المتقدمة باستعمال ASP.NET Core RESTful API
الجمهور المستهدف
الجمهور المستهدف: مطورو .NET ذوو الخبرة والسابق لهم التعامل مع أساسيات ASP.NET Core ومفاهيم REST الأساسية.
المعمارية المتقدمة واحتراف طبقة البيانات
الوحدة 1: معمارية واجهات البرمجة المتقدمة
- مراجعة أفضل الممارسات لتصميم RESTful
- الهيكلية النظيفة والتصميم الطبقي لواجهات البرمجة (Clean Architecture)
- تطبيق حقن التبعيات بفاعلية (Dependency Injection)
- تطبيق مبادئ SOLID في تطوير واجهات البرمجة
- أنماط التصميم: Service, Repository, و Unit of Work
- فصل المسؤوليات في النظم ضخمة الحجم (Separation of Concerns)
- المختبر العلمي: تصميم مشروع ASP.NET Core متعدد الطبقات باستخدام قالب المعمارية النظيفة (Clean Architecture Template).
الوحدة 2: تقنيات Entity Framework Core المتقدمة
- تحسين أداء EF Core لواجهات البرمجة عالية الأداء
- استعلامات التتبع مقابل عدم التتبع (Tracking vs. No-tracking)
- تقنيات LINQ المتقدمة وإسقاط البيانات (Projection)
- إدارة التزامن (Concurrency) والمعاملات (Transactions)
- إدارة الهجرات (Migrations)، التغذية الأولية (Seeding)، والتحكم بإصدارات قواعد البيانات
- إدارة العلاقات والتحميل الكسول (Lazy Loading)
- المختبر العلمي: تطبيق عمليات CRUD متقدمة باستخدام EF Core ونمط Repositories ومعالجة تعارضات التزامن (Concurrency Conflicts).
الوحدة 3: التوجيه والبرمجيات الوسيطة المتقدمة
- تعمق في التوجيه وتوجيه السّمات (Attribute Routing)
- قيود التوجيه المخصصة (Custom Route Constraints)
- إنشاء وتسجيل البرمجيات الوسيطة المخصصة (Custom Middleware)
- المعالجة الشاملة للاستثناءات وردود الأخطاء (Global Exception Handling)
- مرشحات الاستجابة ومعالجات النتائج المخصصة (Response Filters & Custom Result Handlers)
- المختبر العلمي: بناء برمجيات وسيطة مخصصة لتسجيل البيانات (Logging) والمعالجة الشاملة للأخطاء والاستثناءات.
الأمان، التحسين، والتوثيق
الوحدة 4: الأمان والمصادقة
- تطبيق مصادقة JWT وتجديد الرموز (Refresh Tokens)
- التفويض القائم على الأدوار والسياسات (Role-based & Policy-based Authorization)
- استخدام ASP.NET Core Identity في واجهات البرمجة
- تأمين النقاط الطرفية باستخدام OAuth2 و OpenID Connect
- الحماية من هجمات APIs الشائعة (CORS, CSRF, Brute Force, Rate Limiting)
- المختبر العلمي: تأمين الـ API بـ JWT Tokens وبناء سياسات تفويض مخصصة (Custom Authorization Policies).
الوحدة 5: تحسين أداء واجهات البرمجة
- التخزين المؤقت للاستجابات والتخزين الموزع باستخدام Redis
- تحديد معدل الطلبات والتحكم بالتدفق (Rate Limiting & Throttling)
- البرمجة غير المتزامنة والقابلية للتوسع (async/await)
- ضغط البيانات بـ GZIP وضبط الأداء
- استخدام الخدمات الخلفية (IHostedService, Hangfire)
- المختبر العلمي: إضافة التخزين المؤقت (Caching)، ضغط البيانات، وجلب البيانات غير المتزامن لتحسين أداء النظام.
الوحدة 6: توثيق وإصدارات واجهات البرمجة
- إعدادات Swagger (Swashbuckle) المتقدمة
- إضافة مصادقة الأمان إلى واجهة Swagger UI
- تطبيق استراتيجيات إدارة إصدارات الـ API (API Versioning)
- توليد وثائق OpenAPI للعملاء الخارجيين
- المختبر العلمي: دمج Swagger UI مع مصادقة JWT وإنشاء إصدارات متعددة للـ API.
الاختبار، المراقبة، والتقنيات الحديثة
الوحدة 7: معالجة الأخطاء والتحقق من صحة البيانات
- معالجة الأخطاء المركزية (Centralized Error Handling)
- دمج مكتبة FluentValidation للتحقق المتقدم من البيانات
- هيكلة الاستجابات الموحدة وتفاصيل المشاكل القياسية (Problem Details)
- المختبر العلمي: إضافة FluentValidation وبناء Middleware مخصص لمعالجة الأخطاء.
الوحدة 8: الاختبار، تسجيل البيانات، والمراقبة
- اختبارات الوحدة والتكامل (xUnit, Moq, WebApplicationFactory)
- تسجيل البيانات الهيكلية باستخدام Serilog و Seq
- مراقبة الـ APIs باستخدام Application Insights
- فحوصات السلامة ونقاط جاهزية النظام (Health Checks & Readiness Endpoints)
- التتبع الموزع للطلبات باستخدام OpenTelemetry
- المختبر العلمي: تطبيق تسجيل البيانات، فحوصات السلامة، واختبارات التكامل على نقاط API رئيسية.
الوحدة 9: ما بعد REST - أنماط واجهات البرمجة الحديثة
- تطبيق التحديثات الجزئية باستخدام PATCH
- تقسيم الصفحات (Pagination)، الفلترة (Filtering)، والفرز (Sorting)
- مقدمة إلى GraphQL و gRPC في بيئة .NET
- واجهات البرمجة التفاعلية في الوقت الفعلي باستخدام SignalR
- حزم الـ APIs في حاويات ونشرها باستخدام Docker
منهج الدورة
1
هندسة واجهات برمجة التطبيقات المتقدمة
2
تقنيات Entity Framework Core المتقدمة
3
التوجيه والوسيط المتقدم
4
الأمان والمصادقة
5
تحسين أداء واجهات برمجة التطبيقات
6
توثيق وإصدار واجهات برمجة التطبيقات
7
معالجة الأخطاء والتحقق من الصحة
8
الاختبار، تسجيل الدخول، والمراقبة
9
ما بعد REST – أنماط واجهات برمجة التطبيقات الحديثة\
10