أجاكس

أجاكس (بالإنجليزية: Ajax)‏[1] [2] هي تقنية تتيح إمكانية العمل على متصفحات الويب بطريقة مشابهة للعمل على سطح المكتب، حيث يتم طلب صفحة الإنترنت قيد التصفح بدون الحاجة إلى الانتقال إلى صفحة جديدة وهي الطريقة التقليدية للعمل على الويب التي تتمثل بإرسال البيانات من قبل المستخدم (Client Side) إلى الخادم (Server Side) لمعالجة المعلومات ثم إرسال صفحة جديدة تحتوي المعلومات الجديدة المعدلة إلى المستخدم من جديد، بينما تقنية أجاكس تتيح إمكانية إجراء هذه التعديلات والطلبات وذلك دون الحاجة إلى إعادة التحميل من جديد بل يتم تغيير الجزء المراد التعديل عليه في نفس الصفحة وهي في حالة اتصال بخادم الشبكة وذلك عن طريق اتصال جانبي.[3] تستفيد المواقع التي يزورها عدد كبير من الزوار من هذه التقنيات مما يقلل من الجهد الحاصل على خادم الشبكة والزمن اللازم لاستجابة الموقع لدى المتصفح.

أجاكس مبنية على عدة برمجيات موجودة مسبقا أهمها: لغة جافا سكريبت وXML وHTML.

مصطلح أجاكس ظهر أول مرة في مقالة بتاريخ 18 فبراير 2005 لكاتب أمريكي وقد وصف مجموعة تقنيات وأساليب استخدمت من قبل جوجل Google في جوجل أرث وجيميل (Gmail) تمكن المستخدم من التعامل مع الموقع الإلكتروني بطريقة تشبه برامج الحاسوب، حيث يقوم المستخدم بالقيام بأعماله من خلال صفحة واحدة.

للتذكير، فإن الأدوات المستعملة في هذه التقنية كانت موجودة قبل ظهور المقالة. ففي 2001، ظهر الأمر XMLHttp داخل مكتبة MSXML (المكتبة التي صممت في البدء لدعم المتصفح إنترنت اكسبلورر الإصدار 5). وظهر مكافئ له باسم XMLHttpRequest على متصفح موزيلا ومن ثم المتصفحات الأخرى.

تطبيقات الويب سمحت بظهور مواقع تفاعلية (ملء استمارة، محتوى متجدد.). وتعتمد على نقل طلب إلى خادم الويب عبر بروتوكل HTTP، وبعد إنجاز الطلب المنقول يرد بصفحة ويب جديدة. هذه الآلية تتسبب في إعادة نقل بعض البيانات التي لم تتغير أصلا (وغالبا ما يكون التغيير بسيطا) ما يشكل ضياعا في الوقت واستعمالا غير عقلاني لوصلة الإنترنت من كلا الطرفين (الخادم والمستقبل).

التطبيقات التي تستعمل تقنية أجاكس تكتفي بنقل الطلب بأسلوب مشابه للتطبيقات العادية، ولكن تسترجع فقط ما يجب تغييره على صفحة الويب. التقنية تعتمد على لغة جافاسكريبت في الإرسال والاستقبال (باستعمال XMLHttpRequest) ومستفيدة من مزايا CSS. تقنية أجاكس تسمح بتفاعلية أكبر مع الموقع وبكلفة تشغيل بسيطة من جانب خادم الويب (حيث أن الرد غالبا ما يكون بسيطا) وسرعة رد من جانب المتصفح.

إلا أنه في المتصفحات الحديثة يمكن استخدام pushState لتغيير الصفحة والرجوع باستخدام Ajax [4]

يعتقد الكثيرون أن عالم البرمجيات سيتحول إلى الويب بمعني أنه يمكنك استخدام البرامج المختلفة من خلال المتصفح وهناك مواقع كثيرة بدأت المشوار مثل تحويل ملفاتك إلى صيغ مختلفة من خلال المتصفح، بحيث أن تطبيقات الويب لم تعد صفحات بعد الآن بل أصبحت تطبيقات سطح مكتب حقيقية وكاملة في كثير من الأحيان.

أجاكس ليس لغة برمجية مستقلة ولكنها تقنية متقدمة تتكون من عدة تقنيات: