بحث عن نظام الاجاكس فى التصنيف - بحث تعليمى فى نظام الاجاكس ajax فى التصنيف
أجاكس (بالإنجليزية: AJAX، وتعرف اختصاراً Asynchronous Java,,,,,, And XML) وهي عبارة عن تقنية تستخدم عدة برمجيات معروفة مسبقاً لعملها أهمها : جافا سكريبت واكس ام ال واتش تي ام ال (لغة النصوص التشعبية)
تتيح هذه التقنية إمكانية العمل على متصفحات الويب وكأنك تعمل على سطح المكتب الخاص بك، فيتم طلبك على صفحة الإنترنت التي تعمل عليها بدون الحاجة إلى الانتقال إلى صفحة جديدة وهي الطريقة التقليدية للعمل على الويب التي تتمثل بارسال البيانات من قبل المستخدم Client Side باتجاه قاعدة بيانات خادم الشبكة Server Side ليتم تخزين المعلومات في قاعدة بيانات خادم الشبكة ومعالجتها وإرسال المعلومات الجديدة المعدلة إلى المستخدم من جديد ليلاحظ التغيرات التي طرأت على الصفحة أما تقنية ajax تمكنك من اجراء هذه التعديلات والطلبات وذلك دون الحاجة إلى إعادة التحميل من جديد بل يتم تغيير الجزء المراد التعديل عليه في نفس الصفحة وهي في حالة اتصال بخادم الشبكة وذلك عن طريق اتصال جانبي. ان من يستفيد من هذه التقنيات هي المواقع التي يزورها عدد كبير من الزوار مما يقلل من الجهد الحاصل على خادم الشبكة والزمن اللازم لاستجابة الموقع لدى المتصفح.
و من المواقع التي تعمل بهذه التقنية موقع "جوجل ماب" "Google Maps"
مصطلح أجاكس ظهر أول مرة في مقالة بتاريخ 18 فبراير 2005 لكاتب أمريكي وقد وصف مجموعة تقنيات وأساليب أستخدمت من قبل جوجل Google في جوجل أرث وجمايل تمكن المستخدم من التعامل مع الموقع الإلكتروني بطريقة تشبه برامج الحاسوب، حيث يقوم المستخدم ب القيام بأعمالة من خلال صفحة واحدة. للتذكير، فإن الأدوات المستعملة في هذه التقنية كانت موجودة قبل ظهور المقالة. ففي 2001، ظهر الأمر XMLHttp داخل مكتبة MSXML (المكتبة التي صممت في البدء لدعم المتصفح انترنت اكسبلورر الإصدار 5). وظهر مكافئ له باسم XMLHttpRequest على متصفح موزيلا ومن ثم المتصفحات الأخرى.
تطبيقات الوب سمحت بظهور مواقع تفاعلية (ملء استمارة، محتوى متجدد...). وتعتمد على نقل طلب إلى خادم الويب عبر بروتوكل HTTP، هذا الأخير وبعد إنجاز الطلب المنقول يرد بصفحة ويب جديدة. هذه الآلية تتسبب في إعادة نقل بعض البيانات التي لم تتغير أصلا (وغالبا ما يكون التغيير بسيطا) ما يشكل ضياعا في الوقت واستعمالا غير عقلاني لوصلة الإنترنت من كلا الطرفين (الخادم والمستقبل).
التطبيقات التي تستعمل التقنية أجاكس تكتفي بنقل الطلب بأسلوب مشابه للتطبيقات العادية، ولكن تسترجع فقط ما يجب تغييره على صفحة الويب. التقنية تعتمد على لغة جافاسكريبت في الإرسال والاستقبال (باستعمال XMLHttpRequest) ومستفيدة من مزايا CSS. تقنية أجاكس تسمح بتفاعلية أكبر مع الموقع وبكلفة تشغيل بسيطة من جانب خادم الويب (حيث أن الرد غالبا ما يكون بسيطا) وسرعة رد من جانب المتصفح.
النقطة السوداء هي كون المتصفح (انترنيت اكسبلورر أو غيره) مضطر لاستعمال مكتبة كبيرة (تستهلك أكثر من 500 ك.بايت) للاستفادة من هذه التقنية.
• من أهم عيوب أجاكس أن المستخدم لايمكنة استخدام زر الرجوع إلى الصفحة السابقة في المتصفح (البراوزر) لأنة نظرياً يستخدم نفس الصفحة، كما أنة لا يمكنة إضافة الصفحة التي يشاهدها إلى المفضلة في المتصفح وانما يضيف الصفحة الرئيسة التي دخلها أول مرة.
• يخشي الكثير من المبرمجين من نشاط الجافا سكربت الذي يعمل من دون سيطرة الشخص الذي يستعمل البرنامج، والجافا سكربت أستخدمت في السابق كوسيلة لاختراق أجهزة الضحايا وقيام بأعمال الهاكرز.
• كل مستخدم لا يدعم متصفحه الجافا سكريبت أو تقنية XMLHttpRequest أو حتى بكل بساطة قام بتعطيل خاصية الجافا سكريبت، لن يستخدم الصفحات التي تعتمد على تقنية الآجاكس بشكل صحيح. الطريقة الوحيدة لتجنب هذا المشكل هو تطوير حلول عندما لا توجد هناك جافا سكريبت.
• مثل أي تقنية واب أخرى، فإن أجاكس لديه جملة من نقاط الضعف التي يجب على المبرمجين أن يعرفوها. المبرمجين المعتادين على البرمجة بتقنيات واب أخرى يجب عليهم أن يتعلموا طرق اختبار وبرمجة جديدة من أجل بناء وتطوير برامج أجاكس خالية من عيوب الحماية.
[عدل] مستقبل أجاكس
يعتقد الكثيرون أن عالم البرمجيات سيتحول الي الويب بمعني انه يمكنك استخدام البرامج المختلفة من خلال المتصفح وهناك مواقع كثيرة بدأت المشوار مثل تحويل ملفاتك الي صيغ مختلفة من خلال المتصفح، بحيث ان تطبيقات الويب لم تعد صفحات بعد الآن بل أصبحت تطبيقات سطح مكتب حقيقية وكاملة في كثير من الأحيان!
[عدل] مكونات الأجاكس
كما نعلم أن الاجاكس ليس لغة برمجية مستقلة ولكن الاجاكس تقنية متقدمة تتكون من عدة تقنيات
• مكونات الاجاكس
1- XML HTTP REQUEST وهي المسئولة عن الاتصال بالسيرفر JAVA ,,,,,, -2 وهي المسئولة عن عرض العناصر بالصفحات وتتفاعل مع المستخدم XML -3 وهي عبارة عن وسيط بين السيرفر وصفحات HTML