اِیْجکس (AJAX؛ سرواژهٔ Asynchronous JavaScript And XML)، گروهای از استانداردها و فناوریهای اینترنت میباشد که به یاری آنان میاقتدار برنامههایی بر پایهی اینترنت ساخت کرد که به سادگی با یوزرها تعامل داشته باشند. با استعمال از این فناوریها و با یاری انتقال تکههای کوچک داده و دادهها از رایانهٔ خادم (Server)، صفحهها اینترنت از موقعیت منفعل بیرون میشوند و عکس العملهایی مطلوب با حوادث انجام میدهند. ایجکس معماری جدیدی برای برنامههای زیر اینترنت میباشد، که با سرعت بسیار متعددی در حالا توسعه بوده، و کمتر کاربری در وب میباشد که هنوز گذرش به یکیاز صفحاتی که با این معماری تشکیل شدهاند نیفتاده، و از امکانهای فوقالعاده آن فایدهمند نشده باشد. Gmail, Google Map, Google Suggest, Orkut، و اسامیآشنای دیگر، مثالهایی میباشند از کاربرد ایجکس. با به کارگیری از این معماری، صفحهها اینترنت تعامل بسیار خیر و خوبی با یوزرها خواهند داشت. بعلاوه، مهمترین مزیت این معماری این میباشد که دیگر برای انجام هر کاری، لازم وجود ندارد ورقه اینترنت مجدد لود شود. درین نوشتهیعلمیبه باز بینی تاریخچه، اصول، و طرزٔ انجام امور درین معماری خوا هیم پرداخت.
تیم فناوریهای تشکیل دهنده ایجکس عبارتند از:[۱]
اکران استاندارد با به کار گیری از اکساچتیامال و سیاساس
اکران پویایی و تعاملات با استعمال از گونه شیءگرای گواهی
تبادل و ویرایش دادهها با به کارگیری از XML و تبدیلات اکساسال،
بازیابی دادهها به طور غیر همروند با به کارگیری از XMLHttpRequest،
نهایتاً جاوااسکریپت برای سرهمبندی همگی چیز با هم.
محتویات
۱ پیشینه
۲ ایجکس تحت عنوان معماری جدیدی برای اینترنت
۳ ایجکس چه چیزی است
۴ ایجکس؛ معماری جدیدی برای اینترنت
۵ پیشنهادهای ارائه گردیده با ایجکس
۶ اشتباهات ایجکس
۷ منابع
۸ لینک و پیوند به خارج
پیشینه[دستکاری]
واژه و کلمه ایجکس را برای اولین توشه Jesse James Garrett در فوریه سال ۲۰۰۵ در نوشتهعلمیAjax: A New Approach to Web Applications بهره مند شد. اگرچه اسم ایجکس برای اولیه توشه در سال ۲۰۰۵ ابتکار عمل شد، ولی تاریخچه اکثر فناوریهایی که به ایجکس منتهی شدند به حدود یک ده سال قبلی و ابتکارات مایکروسافت در اسکریپتنویسی از روش به دور بازمیگردد. با این درحال حاضر تاریخچه فناوریهایی برای بار گذاری غیرهمروند محتویات یک ورقه اینترنت، فارغ از نیاز به لود مجدد کاغذ، به عنصرها IFRAME (که در سال ۱۹۹۶ در ورژن ۳ IE ارائه شد) و موادتشکیل دهنده LAYER (که در سال ۱۹۹۷ در ورژن ۴ مرورگر نتاسکیپ ارائه شد، ولی در ورژنهای اخیر موزیلا متروکه شده است) بازمیگردد. هردوی این موادتشکیل دهنده، یک ویژگی src دارا هستند که قادر است یک نشانی URL فرنگی را مشتمل بر شود و بنابراین درصورتی که کاغذای دربرگیرنده یک کد جاوااسکریپت لود شود که ورقه والد را بازنویسی مینماید، فیضای مشابه ایجکس خواهیم داشت.
اسکریپت نویسی از منش بدور مایکروسافت (یا این که MSRS که در سال ۱۹۹۸ مطرح شد) جایگزین مطلوبتری برای تکنیکهای قبلی به حیث میرسید. دراین طریق، دادهها بهوسیله یک جاوا اپلت اخذ میشد، و در سمت و سوی کلاینت برقراری رابطه بهوسیله جاوااسکریپت انجام میگرفت. این شیوه در ورژنهای ۴ و بعدتر وب اکسپلورر و نتاسکیپ پشتیبانی میگردد.
مایکروسافت در ورژنٔ ۵ وب اکسپلورر شیء XMLHttpRequest را ارائه کرده و برای اولین توشه درهاتمیل که در Microsoft Exchange Server ۲۰۰۰ ارائه شد، از این شیوه با به کارگیری از شی XMLHttpRequest منفعت جست.
در غایت با تغییر و تحول و تحولاتی که دراین مسیر پدیدآمد و جایگزینی شیء XMLHttpRequest به جای جاوا اپلت، در حال حاضر روشی برای اسکریپنویسی از رویه به دور متداول گردیده که آن را با تیتر ایجکس میشناسیم.
ولی آنچه سبب شد بعداز این برهه زمانی، یک دفعه اعتناها به سمت ایجکس جلب شود، تمرکز کمپانی گوگل بر این معماری بود. اینترنتوبسایتهایی از قبیل Google Map، جیمیل و فهرست تولیدها گوگل پروژههایی بودند که سبب شد اعتنا یوزرها، چه یوزرها معمولی و چه یوزرها فنای، به طرز عمل آنها جلب شود.
ایجکس تحت عنوان معماری جدیدی برای اینترنت[دستکاری]
طرز عمل برنامههای کلاسیک اینترنت چیزی مشابه این میباشد: اکثر تعاملات استفاده کننده با رابط کاربری سبب ارسال یک درخواست به سرور میشود. سرور پردازشهای لازم را انجام داده و آنگاه یک برگه HTML به کلاینت بازمیگرداند. این گونه بر پایهی انگیزه اصلی اینترنت، یعنی بازی نقش یک رسانه برای ابرمتن میباشد. البته آنچه اینترنت را برای ابرمتنها مطلوب مینماید، الزاماً آن را برای برنامههای قابل انعطافافزاری نیز مطلوب نخواهد کرد[۲]. آیتم اینجاست که برنامههای اینترنت برای کاربرد (Application) بودن پباده سازی نشدهاند و این سبب ساز شده است که در اکثری موردها استفاده کننده را نادیده بگیرند.
فرض نمایید استفاده کننده میخواهد در یک دکان الکترونیک، خصوصیات متاع بعدی را ببیند، یا این که یک فرآورده را به سبد خرید خویش بیفزاید. اتفاقی که میفتد این میباشد که برای انجام هرمورد از این امور، زیرا نیاز میباشد با سرور رابطه برقرار شود، میبایست یک درخواست به سرور ارسال گردیده، سرور پردازشهای لازم را انجام دهد و آنگاه یک ورقه تحت عنوان فیض بازگرداند. استفاده کننده هم دراین دربین قادر است با انگشتانش بازی نماید!
گرچه ما به صفحهها اینترنت، با همین فرایند انجام کارها عادت کردهایم، البته حقیقتاً طرز کلاسیک برنامههای اینترنت، گرچه از دید تکنیکی مزایای اکثری داراهستند، ولی خطاها عمدهای هم دارا هستند. یکی عمدهترین ایرادات صفحهها اینترنت را میاقتدار همروند فعالیت کردن آنها دانست. (یعنی همین که زمانی درخواستی از سرور داریم، ورقه اینترنت مقابلمان مسدود گردیده و میبایست در انتظار بمانیم تا سرور کارش به پایان برسد و ورقهای تحت عنوان جواب برگرداند).
ایجکس چه میباشد[بازنویسی]
ایجکس یک تکنولوژی وجود ندارد؛ بلکه تیمایست از تکنولوژیهایی که هرکدام در جای خویش تکنولوژی بی نقص و موفقی میباشند، و اینک به صورت جدیدی در کنار هم قرار گرفته و ایجکس را تشکیل دادهاند [۲]. تکنولوژیهایی که در ایجکس از آنان استعمال میگردد عبارتاند از: