مرحبًا. في هذا الدرس، سأوضح لك ما هي وظائف Azure، وكيفية مقارنتها ببنيات التطبيقات الأخرى لتطوير الحلول وبعض السيناريوهات الشائعة حيث يمكنك تنفيذ وظائف Azure. تم تصميم وظائف Azure كبيئة تطوير بدون خادم. وهذا يختلف عن التطبيقات التقليدية حيث يقوم المطورون ببناء تطبيقات الويب التي تعمل على الخوادم، عادة 24 ساعة في اليوم، سبعة أيام في الأسبوع. يجب أن تكون تطبيقات الويب هذه بدوام كامل ،مقدمة على خادم معين. ولذلك، فإن متطلبات الأجهزة الخاصة بهم ثابتة ومحدودة. تم تصميم وظائف Azure كبنية بدون خادم، مما يعني أنها يمكن أن تتوسع على أجهزة Microsoft Azure و يتم تحصيل الرسوم فقط أثناء تنفيذها. البيئات التي لا تحتوي على خادم قابلة للتطوير بدرجة كبيرة. نظرًا لأنك تدفع فقط أثناء تنفيذ الوظيفة، فإنها تسمح للمطورين ببناء أشياء مثل العمليات المجمعة التي تعمل فقط عدة مرات في الشهر، أو التطبيقات التي تحتاج إلى التوسع بشكل كبير في ظل سيناريوهات التحميل العالي والبناء تلك بطريقة لا تتم محاسبتها إلا أثناء تنفيذها. يؤدي هذا إلى إنشاء نوع جديد من البيئة حيث تشتمل الخدمات الفردية على تطبيق. بدلاً من بناء تطبيق تقليدي متجانس حيث تكون جميع التعليمات البرمجية موجودة في مجموعة واحدة من الوظائف، أنت قادر على تقسيم تطبيقك أو تفكيكه إلى مكونات فردية يمكن تشغيلها بشكل مستقل تتم محاسبتك فقط أثناء تنفيذها. تتميز هذه الوظائف التي لا تحتوي على خادم بمرونة كبيرة أيضًا لأنه يمكن دمجها في مجموعة متنوعة من لغات البرمجة الشائعة المختلفة. لا يوجد حد لكود تطوير وظيفة Azure Function. يتم أيضًا دعم جميع لغات التطبيق التي تدعمها تطبيقات الويب التقليدية أو خدمات التطبيقات من خلال الوظائف. يتضمن ذلك أشياء مثل NET. وجافا سكريبت، والتطبيقات القائمة على Java. وأخيرًا، سترى أيضًا أنه يمكن تعريف العمليات المعقدة من خلال سلسلة من تطبيقات Azure المنطقية أو تطبيقات الوظائف التي تنفذ شيئًا يسمى الوظائف الدائمة. لا يلزم تنفيذ الوظائف الدائمة وإنهائها في خطوة واحدة. يمكنهم الجلوس وانتظار اكتمال العمليات الأخرى، أو يمكنهم الجلوس وانتظار الموافقات البشرية للسماح لهم بالمتابعة. لذا فإن الوظائف الدائمة تسمح أيضًا للمطورين بتنفيذ منطق الأعمال وربما زيادة قابلية التوسع أو الأداء من خلال استخدام أشياء مثل التوازي في المعالجة الخلفية الخاصة بهم. قد يكون السيناريو الشائع لاستخدام تطبيق الوظيفة جزءًا من خدمة الواجهة الخلفية لتطبيق ويب عام. من الشائع أن يتم تسليم الخدمات إلى خوادم الويب من خلال أنظمة خلفية تسمى واجهات برمجة التطبيقات (APIs). إن إنشاء مجموعة من التطبيقات الوظيفية وإظهارها كواجهة برمجة التطبيقات (API) من شأنه أن يسمح لتطبيقات مثل تطبيقات الويب أو تطبيقات الهواتف الذكية لاستدعاء هذه الوظائف وإعطاء المبرمجين وما يقابلها من التطبيقات الوصول إلى البيانات المناسبة. في هذا السيناريو، يمكنك رؤية تطبيق صفحة واحدة يعمل في بيئة Azure التقليدية ويمكن الوصول إليه بيانات ثابتة من حساب التخزين. عندما يحتاج هذا التطبيق إلى بيانات ديناميكية مثل محتويات ملف تعريف المستخدم أو العناصر المتوفرة للشراء، يستدعي تطبيق الويب خادم إدارة API. يقوم خادم API بعد ذلك بالكشف عن مجموعة من التطبيقات الوظيفية لتقديم الخدمات لتطبيق الويب مثل العثور على جميع المنتجات. يمكنك أن ترى أن التطبيق الوظيفي يمكن أن يتفاعل مع Cosmos DB ويسترد تلك البيانات ويرسلها مرة أخرى إلى تطبيق الويب كرد على استدعاء الوظيفة. مثال بديل لاستخدام الوظائف هو أن يقوم المطورون ببناء خدمات الواجهة الخلفية. في هذه الحالة، يمكنك رؤية الأجهزة التي تقوم بإيداع سجلات جديدة في مركز الأحداث. قد يكون هذا بمثابة جهاز مسح ضوئي يفيد بوصول منتج أو تم تسليم منتج. عندما تقوم بتتبع هذه الأحداث في مركز الأحداث، يمكنك تشغيل تنفيذ تطبيقات الوظائف. وهذا يعني أنه لا ينبغي لأي مستخدم أن يشارك في هذه العملية. عندما يتلقى مركز الحدث حدثًا جديدًا، يمكنك إعداد مشغل لتنفيذ تطبيق الوظيفة تلقائيًا وتنفيذ مهام الواجهة الخلفية مثل معالجة العناصر في قاعدة بيانات Cosmos أو معالجة السجلات في قائمة انتظار التخزين. ترقب الدرس التالي حيث سأوضح لك كيفية تطوير وظائف Azure في بوابة Azure. شكرا للمشاهدة.