Ajax :روشي نوين در طراحي برنامه هاي كاربردي
امروزه، معمولا وقتی صحبت از طراحی برنامه های تعاملی می شود،بیشتر توجه ها معطوف به وب است. کاربران دوست دارند که با راحتی و سرعتی که با Desktop application ها کار می کنند با Web application ها هم کار کنند. طراحان برنامه های کاربردی وب هم برای از بین بردن این شکاف ، روش های طراحی گوناگونی را پیشنهاد کرده اند.
نگاهی به Google Suggest و Google Maps بیندازید . وقتی روی قسمتی از نقشه zoom می کنید و یا بالا و پایین می روید همه چیز تقریبا به طور همزمان و بدون Load شدن مجدد صفحات انجام می شود. Gmail و Orkut نیز نمونه ای از روش طراحی جدید به نام Ajax هستند.
آجاکس شامل مجموعه ای از تکنولوژی های مختلف است که گرد هم آمده اند تا یک روش قدرتمند و جدید را برای طراحی برنامه های کاربردی وب ایجاد کنند
AJAX مخفف کلماتAsynchronous JavaScript + XML است
· standards-based presentation using XHTML and CSS;
· dynamic display and interaction using the Document Object Model;
· data interchange and manipulation using XML and XSLT;
· asynchronous data retrieval using XMLHttpRequest;
· and JavaScript binding everything together.
مدل کلاسیک برنامه های کاربردی وب به این صورت است که: کاربران توسط یک واسط، درخواست خود را به وب سرور ارسال می کنند. سرور پردازشی خاص برای درخواست مورد نظر کاربر انجام می دهد و سپس نتیجه را به صورت HTML به کاربر برمی گرداند. این مدل با کاربرد اولیه وب به عنوان واسط انتقال hypertext سازگار است اما تجربیات نشان می دهد که در طراحی برنامه های کاربردی لزوما استفاده از این مدل نتیجه مطلوب کاربران را نمی دهد!
وقتی که سرور مشغول پردازش درخواست ها است، کاربر چه می کند؟ مسلم است که انتظار می کشد! و این انتظار در هر مرحله از انجام کار بیشتر و بیشتر می شود! زمانی که یک فرم وب را در برنام کاربردی خود قرار می دهید کاربر باید تا زمان دریافت نتایج صبر کند.اصلا چه لزومی دارد که کاربر ببیند برنامه او به سمت سرور می رود؟! Ajax به این پرسش ها پاسخ می دهد:
یک برنامه کاربردی Ajax ، طبیعت start-stop-start-stop برنامه های کاربردی وب را با معرفی یک واسط به نام Ajax engine بین کاربر و سرور، از بین می برد. ممکن است به نظر برسد که افزودن یک لایه جدید به برنامه کاربردی، عکس العمل آن را کند کند اما نتیجه حاصله کاملا برعکس است! به جای load کردن یک صفحه وب در آغاز یک session ، مرورگر کاربر، Ajax engine را که توسط JavaScript نوشته شده است load می کند. این engine مسئولیت render کردن واسطی که کاربر می بیند و همچنین ارتباط با سرور از سمت کاربر را بر عهده دارد.این engine سبب می شود که تعامل کاربر با برنامه کاربردی، نا همگام(asynchronously ) با ارتباط کاربر با سرور انجام شود. بنابر این ،کاربر هرگز یک صفحه مرورگر خالی یا یک آیکون ساعت شنی برای انتظار نمی بیند و منتظر سرور نمی نشیند!
Google نقش مهمی را در طراحی و به کارگیری این شیوه جدید داشته است. Orkut , Gmail و آخرین نسخه آزمایشی Google Groups , Google Suggest و Google Maps به شیوه Ajax طراحی شده اند.(برای کسب اطلاعات بیشتر می توانید به تحلیل Gmail , Google Suggest و Google Maps مراجعه کنید.) بیشتر ویژگی های جالب که در Flickr مشاهده می کنید بر اساس همین شیوه است. متور جستجوی Amazon’s A9.com هم بر اساس این روش طراحی شده است.
این پروژه های موفق نشان می دهند که Ajax یک روش تئوری نیست بلکه کاملا کاربردی است!
----------------------------------------------------------------------------------------------------------------------
کاشکی میشد تو زندگی ما خودمون باشیم و بس
تنها برای یک نگاه حتی برای یک نفس
تا کی به جای خود ما ، نقاب ما حرف بزنه؟
تا کی سکوت و رج زدن نقش نمایش منه؟
هرکسی هستی یه دفعه ، قد بکش از پشت نقاب
از رو نوشته حرف نزن ، رها شو از پیله ی خواب
نقش یک دریچه رو، رو میله ی قفس بکش
برای یک بار که شده ، جای خودت نفس بکش!

|