واضح آرشیو وب فارسی:سایت دانلود رایگان:
واژه Ajax را برای اولین بار آقای JesseJames Garrett در فوریه سال 2005 در مقاله Ajax: A New Approach to WebApplications استفاده کرد. اگرچه نام Ajax برای نخستین بار در سال 2005ابداع شد، اما تاریخچه اکثر فناوریهایی که به آژاکس منتهی شدند به حدودیک دهه قبل و ابتکارات مایکروسافت در اسکریپت نویسی از راه دوربازمیگردد. با این حال تاریخچه فناوریهایی برای بارگذاری غیرهمروندمحتویات یک صفحه وب، بدون نیاز به بارگذاری دوباره صفحه، به عناصر IFRAME(که در سال ۱۹۹۶ در نسخه ۳ IE ارائه شد) و عناصر LAYER (که در سال ۱۹۹۷ درنسخه ۴ Netscape ارائه شد، اما در نسخههای اخیر Mozilla متروکه شده است)باز میگردد. هردوی این عناصر، یک خصوصیت src دارند که میتواند یک آدرسURL خارجی را شامل شود و به این ترتیب اگر صفحهای شامل یک کد JavaScriptبارگذاری شود که صفحه والد را دستکاری میکند، نتیجهای شبیه Ajax خواهیمداشت.
اسکریپت نویسی از راه دور مایکروسافت (یا MSRS که در سال۱۹۹۸ مطرح شد) جایگزین مناسبتری برای تکنیکهای گذشته به نظر میرسد. دراین روش، دادهها بهوسیله یک Java Applet دریافت میشود، و در سمت کلاینتبرقراری ارتباط بهوسیله JavaScript انجام میگیرد. این روش در نسخههای 4و بعدتر IE و Netscape Navigator پشتیبانی میشود. سپس مایکروسافت در نسخه۵ IE شی XMLHttpRequest را ارائه کرده و برای اولین بار در Outlook WebAccess که در Microsoft Exchange Server 2000 ارائه شد، از این روش بااستفاده از شی XMLHttpRequest بهره جست.
در نهایت با تغییر وتحولاتی که در این مسیر بوجود آمد و جایگزینی شی XMLHttpRequest به جایJava Applet، اکنون روشی برای اسکریپ نویسی از راه دور متداول شده کهآنرا با عنوان Ajax میشناسیم.
اما آنچه باعث شد پس از این مدت،ناگهان توجهها به سمت Ajax جلب شود، تمرکز Google بر این معماری بود.Google Map، Gmail و Google Suggest پروژههایی بودند که باعث شد توجهکاربران، چه کاربران عادی و چه کاربران حرفهای، به نحوه کار آنها جلبشود.
Ajax ؛ معماری جدیدی برای وب
روش کار برنامههایکلاسیک وب چیزی شبیه این است: اکثر تعاملات کاربر با رابط کاربری باعثارسال یک درخواست به سرور میشود. سرور پردازشهای لازم را انجام داده وسپس یک صفحه HTML به کلاینت بازمیگرداند. این مدل بر اساس هدف اصلی وب،یعنی ایفای نقش یک رسانه برای ابرمتن است. اما آنچه وب را برای ابرمتنهامناسب میکند، الزاماً آن را برای برنامههای نرمافزاری نیز مناسب نخواهدکرد[2]. مسئله اینجاست که برنامههای وب برای کاربرد (Application)بودنطراحی نشدهاند و این باعث شده است که در بسیاری موارد کاربر را نادیدهبگیرند.
فرض کنید کاربر میخواهد در یک فروشگاه الکترونیک،مشخصات جنس بعدی را ببیند، یا یک جنس را به سبد خرید خود اضافه کند.اتفاقی که میافتد این است که برای انجام هریک از این کارها، چون نیاز استبا سرور ارتباط برقرار شود، باید یک درخواست به سرور ارسال شده، سرورپردازشهای لازم را انجام دهد و سپس یک صفحه به عنوان نتیجه بازگرداند.کاربر هم در این میان میتواند با انگشتانش بازی کند!
گرچه ما بهصفحات وب، با همین روند انجام فعالیت هاعادت کرده ایم، اما واقعا روشکلاسیک برنامههای وب، گرچه از نظر تکنیکی مزایای بسیاری دارند، امامشکلات عمدهای هم دارند. یکی از عمدهترین مشکلات صفحات وب را میتوانهمروند کار کردن آنها دانست. (یعنی همین که وقتی درخواستی از سرور داریم،صفحه وب مقابلمان مسدود شده و باید منتظر بمانیم تا سرور کارش تمام شود وصفحهای به عنوان پاسخ برگرداند).
اکنون ببینیم Ajax چه پیشنهادی ارائه میدهد.
* قسمتهای مهم معماری پیشنهادی Ajax به این قرارند:
oرخدادهای کوچک سمت سرور: اجزای درون یک برنامه وب میتوانند، درخواستهایکوچکی برای سرور ارسال کنند، اطلاعات مورد نیازشان را از سرور دریافتکنند، و هر قسمت از صفحه را که لازم است بر اساس DOM بهروز کنند، بدوناینکه تمام صفحه دوباره بارگذاری و ترسیم شود.
o غیر همروندبودن: درخواستهایی که به سرور ارسال میشود، باعث مسدود شدن صفحهٔ درونمرورگر کلاینت نمیشوند. کاربر میتواند به کار با قسمتهای دیگر برنامهادامه دهد و هنگامی که پاسخی از سرور دریافت شد، با بهروز کردن رابطکاربر، به کاربر اطلاع داده میشود.
o عکسالعمل برای هر رخدادی:تقریباً میتوانیم برای تمام رخدادهایی که کاربر بوجود میآورد، با سرورارتباط برقرار کنیم. مرورگرهای مدرن اکثر رخدادهایی را که سیستم عاملاجازه میدهد دریافت میکنند: کلیک کردن موس، حرکت موس روی شی، زدن یککلید و غیره. هر رخدادی میتواند باعث ارسال یک درخواست به صورت غیرهمروند برای سرور شود.
کاربردها
حتماً در بخش پستالکترونیک وبگاه یاهو دیدهاید که با تایپ حروف اول نام دوستانتان نامچند نفر از آنها از پایگاه دادهها فراخوانی شده و به شما نمایش دادهمیشود. این کار بدون اینکه صفحه بارگذاری مجدد گردد انجام میشود. بهزبان سادهتر، آژاکس فناوریای ست که در آن با بارگذاری شدن یک صفحه،امکان فراخوانی برنامههای سمت رایانهٔ خادم (Server) بدون بارگذاری مجددصفحه وجود دارد. برنامههای آژاکس راهی برای ساخت برنامههایی تعاملی دروب فراهم کردهاند. برای این کار کافیست یک عنصر فعال که قابل فراخوانیدر جاوااسکریپت باشد بتواند تحت کنترل جاوااسکریپت با سرور تماس گرفته واطلاعات درخواست کند. بهعنوان مثال این عنصر فعال میتواند یک برنامه ASPیا JSP یا... را فراخوانی کرده و نتایج آن را از طریق جاوااسکریپت در صفحهجاری تأثیر دهد. عنصر فعال قبل از معرفی آژاکس میتوانست یک ActiveX یاجاوا اپلت ساده باشد اما اکنون این عنصر آبجکت XMLHttpRequest است که درمجموعه ابزارهای XML مایکروسافت قرار دارد.
امروزه تقریباً همه مرورگرهای معروف از جمله IE از این تكنولوژی استفاده میكنند.
این صفحه را در گوگل محبوب کنید
[ارسال شده از: سایت دانلود رایگان]
[تعداد بازديد از اين مطلب: 182]