JavaScript - البرمجة غير المتزامنة (Asynchronous)
JavaScript - البرمجة غير المتزامنة (Asynchronous)
🔸 في JavaScript، Asynchronous Programming تعني أن الكود لا ينتظر تنفيذ الأسطر السابقة ليكمل، بل يمكنه المتابعة أثناء حدوث عمليات بطيئة مثل جلب البيانات أو التعامل مع الوقت. وهذا ما يجعل JavaScript فعالة في التعامل مع الويب.
---🔹 الفرق بين Synchronous و Asynchronous
- Synchronous: كل سطر يجب أن يكتمل قبل الانتقال للسطر التالي.
- Asynchronous: يمكن تنفيذ الأسطر التالية دون انتظار انتهاء العمليات البطيئة.
🔹 مثال توضيحي باستخدام setTimeout
console.log("قبل الانتظار");
setTimeout(() => {
console.log("بعد 2 ثانية");
}, 2000);
console.log("بعد السطر غير المتزامن");
📌 رغم أن setTimeout
يأتي قبل "بعد السطر"، إلا أن تنفيذه يتأخر، لأنه غير متزامن.
🔹 لماذا نحتاج Asynchronous؟
- لمنع تجميد الصفحة عند تحميل بيانات من الإنترنت.
- للسماح بتفاعل المستخدم أثناء انتظار الرد من الخادم.
- لتنفيذ مهام خلفية دون تعطيل سير التطبيق.
📌 أدوات Asynchronous في JavaScript
setTimeout()
وsetInterval()
XMLHttpRequest
(قديم)Fetch API
(حديث)Promises
وasync/await
(أفضل الحلول)
⚠️ ملاحظات مهمة
- JavaScript تستخدم نموذج event-driven — أي تعتمد على الأحداث (Events).
- يُعد فهم البرمجة غير المتزامنة ضروريًا لتطوير تطبيقات حديثة وسريعة.
تعليقات
إرسال تعليق