PDA

توجه ! این یک نسخه آرشیو شده می باشد و در این حالت شما عکسی را مشاهده نمی کنید برای مشاهده کامل متن و عکسها بر روی لینک مقابل کلیک کنید : فناوری آژاکس



TAHA
10-11-2009, 09:46 AM
اِیْ‌جکس یا آژاکس (AJAX؛ سرواژهٔ «Asynchronous JavaScript And XML»)، مجموعه‌ای از استانداردها و فناوری‌های وب است که به کمک آن‌ها می‌توان برنامه‌هایی مبتنی بر وب تولید کرد که به آسانی با کاربران تعامل داشته باشند. با استفاده از این فناوری‌ها و با کمک انتقال تکه‌های کوچک داده و اطلاعات از رایانهٔ خادم (Server)، صفحات وب از حالت منفعل خارج می‌شوند و واکنش‌هایی مناسب با رویدادها انجام می‌دهند.
Ajax معماري جديدي براي برنامه‌هاي تحت وب است، که با سرعت بسيار زيادي در حال گسترش بوده، و کمتر کاربر اينترنت است که هنوز گذرش به يکي از صفحاتي که با اين معماري ساخته شده‌اند نيفتاده ، و از قابليت‌هاي فوق‌العاده آن ذوق‌زده نشده باشد. Gmail، Google Map،Google Suggest ، Orkut، و اسامي آشناي ديگر، نمونه هايي هستند از جادويي به نام AJAX . با استفاده از اين معماري، صفحات وب تعامل بسيار خوبي با کاربران خواهند داشت و بعلاوه، مهمترين مزيت اين معماري اين است که ديگر براي انجام هر کاري، لازم نيست صفحه وب دوباره بارگذاري شود

مجموعه فناوری‌های تشکیل دهنده آژاکس عبارت‌اند از
نمایش استاندارد با استفاده از XHTML و CSS،
نمایش پویایی و تعاملات با استفاده از (DOM)،
تبادل و دستکاری داده با استفاده از XML و XSLT،
بازیابی داده‌ها بصورت غیر همروند با استفاده از XMLHttpRequest،
نهایتاً JavaScript برای سرهمبندی همه چیز با هم.

آژاکس چیست
آژاکس يک تکنولوژي نيست؛ بلکه مجموعه‌ايست از تکنولوژي‌هايي که هر يک در جاي خود تکنولوژي کامل و موفقي هستند، و اکنون به شکل جديدي در کنار هم قرار گرفته و Ajax را تشکيل داده‌اند [2]. تکنولوژي‌هايي که در Ajax از آن‌ها استفاده مي‌شود عبارتند از:نمايش استاندارد با استفاده از XHTML و CSS.
نمايش پويايي و تعاملات با استفاده از Document Object Model (DOM).
تبادل و دستکاري داده با استفاده از XML و XSLT.
بازيابي داده‌ها بصورت غير همروند با استفاده از XMLHttpRequest.و JavaScript براي سرهمبندي همه چيز با هم.
در واقع Ajax ترکيبي از تکنولوژي‌هاي فوق است و هيچ چيز جديدي ارائه نمي‌دهد. همه شگفتي Ajax در معماري‌ايست که براي ساخت يک برنامه وب، با استفاده از اين تکنولوژي‌ها ارائه مي‌دهد.

مشکلات Ajax
اگرچه اين روش مزاياي بسياري دارد و شکاف بين برنامه‌هاي روميزي و برنامه‌هاي وب را بسيار کم‌تر کرده است، اما مشکلاتي نيز دارد که هنگام کار به اين روش، بايد به آن‌ها توجه کرد. يکي از مشکلاتي که در مورد Ajax عنوان مي‌شود، اين مسئله است که اين روش کاربرد کليد Back مرورگرها را مختل کرده و اين بر خلاف عادت کابران در محيط وب است . البته براي حل اين مسئله راه‌حل‌هايي پيشنهاد شده که اينجا جاي بحث در مورد آن‌ها نيست. مشکل ديگر Ajax مسئله تاخير شبکه ونگراني در مورد زمان پاسخگويي سيستم است. مسئله تاخير شبکه در يک برنامه بر اساس Ajax بايد با دقت در نظر گرفته شود. تاخير در بارگذاري اوليه رابط کاربر برنامه، چيزيست که معمولا براي کاربر قابل درک نيست و بايد با دادن پيغامي مناسب، کاربر را از اينکه سيستم درحال بارگذاري، يا انجام فعاليتي و برقراري ارتباطي با سرور است، آگاه کرد . مسئله ديگري که در مورد سيستم‌هاي بر اساس Ajax وجود دارد، استفاده Ajax از JavaScrip است و اين مسئله که کاربر مي‌تواند اجازه اجراي JavaScript در مرورگر خود را ندهد. پس بايد پيش از شروع بارگذاري موتور Ajax از اجازه داشتن اجراي JavaScript روي مرورگر کلاينت اطمينان پيدا کرد. البته در مورد IE نسخه 6، به اين مسئله نيز بايد توجه کرد که شی XMLHttpRequest به صورت ActivX پياده سازي شده و در نتيجه کاربر بايد امکان استفاده از ActivX ها را نيز به مرورگر بدهد . مسئله ديگري که بايد به آن توجه داشت، اين است که کدهاي JavaScript برنامه را هر کسي به راحتي مي‌تواند ببيند. در نتيجه بهتر است قسمت‌هايي از برنامه را که مربوط به امنيت، يا منطق پردازشي برنامه مي‌شود، سمت سرور نگه داريم. به نظر مي‌رسد ساخت سيستمي که ترکيب متوازني از پردازش‌هاي سمت سرور و يک موتور Ajax قوي در طرف کلاينت باشد، مي‌تواند راه‌حل بسيار مناسبي باشد.

TAHA
10-11-2009, 09:46 AM
Ajax چیست؟
امروزه، معمولا وقتی صحبت از طراحی برنامه های تعاملی (interaction design ) می شود، بیشتر توجه ها معطوف به وب است. برنامه های کاربردی تحت وب به سرعت در حال رشد و توسعه هستند و کاربران دوست دارند که با همان راحتی و سرعتی که با Desktop Application ها کار می کنند با Web Application ها هم کار کنند. طراحان برنامه های کاربردی وب هم برای از بین بردن این شکاف، روش های طراحی گوناگونی را پیشنهاد کرده اند. یکی از این روش ها روش Ajax است. Ajax مخفف Asynchronous JavaScript + XML می باشد.
نگاهی به Google Suggest و Google Maps بیندازید. در Google Maps وقتی روی قسمتی از نقشه zoom می کنید و یا بالا و پایین می روید همه چیز تقریبا به طور همزمان و بدون Load شدن مجدد صفحات انجام می شود. در Google Suggest نیز وقتی مشغول تایپ کلمه مورد نظر خود هستید، به طور همزمان کلمات مرتبط با آن و نیز نتایج حاصل از جستجوی آنها نمایش داده می شود. این برنامه ها چگونه کار می کنند؟
مدل کلاسیک برنامه های کاربردی وب به این صورت است که: کاربران توسط یک واسط، درخواست خود را به وب سرور ارسال می کنند. سرور پردازشی خاص برای درخواست مورد نظر کاربر انجام می دهد و سپس نتیجه را به صورت HTML به کاربر برمی گرداند. این مدل با کاربرد اولیه وب به عنوان واسط انتقال hypertext سازگار است اما تجربیات نشان می دهد که در طراحی برنامه های کاربردی لزوما استفاده از این مدل نتیجه مطلوب کاربران را نمی دهد! وقتی که سرور مشغول پردازش درخواست ها است، کاربر چه می کند؟ مسلم است که انتظار می کشد! و این انتظار در هر مرحله از انجام کار بیشتر و بیشتر می شود! زمانی که یک فرم وب را در برنامه کاربردی خود قرار می دهید کاربر باید تا زمان دریافت نتایج صبر کند. اصلا چه لزومی دارد که کاربر ببیند برنامه او به سمت سرور می رود؟! Ajax به این پرسش ها پاسخ می دهد.

سوال : Ajax چیست ؟
در واقع Ajax پاسخی به مشکلات Web Application ها در چند سال گذشته است. کافی است یکبار یک سایت طراحی کنید تا بفهمید که Postback های اضافی و بی مورد و load شدن های وحشتناک آنهم به خاطر تغییر مثلا تاریخ در یک Calendar چه دردسری را برای طراح و کاربر ایجاد میکند.
جواب ساده تر: AJAX راهی برای تقسیم کردن صفحات وب به قسمتهای قابل Update است به طوریکه Update کردن بخشی از صفحه کل صفحه را Update نکند.

سوال : Ajax چطور کار میکند ؟
وقتی صحبت از انداختن بار CPU از سرور به کامپیوتر کاربر میشود یعنی از java script استفاده شده است. در واقع سیستم استفاده از script که به دلیل ناامنی به کناری گذاشته شده بود با تلفیق جدید دوباره احیا شد. الیته نمیخواد دوباره سراغ کتابهای مرجع و سورس کدهای جاوااسکریپت خودتون برید
جواب ساده تر: Ajax با تلفیق جاوا اسکریپت ، XML و ASP.NET یک سری کنترل های موجود در ASP.NET را بسط داده و بخشی از کار آن کنترل را با استفاده از جاوا اسکریپت در سیستم کاربر انجام میدهد.

سوال : برای استفاده از Ajax چکار باید کرد ؟
ابتدا به سایت زیر سر زده و هر چی دمه دستتون میاد Download کنید ( لینکهای زیر مربوط به فایلهای اصلی میباشد اما حتما سراغ ویدیوهای توی سایت هم برید )
۱. وب سایت رسمی AJAX (http://ajax.asp.net/default.aspx)
۲. اولین فایلی که باید بگیرید : ASP.NET AJAX Extensions (http://www.microsoft.com/downloads/details.aspx?FamilyID=ca9d90fa-e8c9-42e3-aa19-08e2c027f5d6&displaylang=en)
۳. فایل کنترلهای اصلی ASP.NET AJAX Control Toolkit (http://www.codeplex.com/AtlasControlToolkit/Release/ProjectReleases.aspx?ReleaseId=1425)
۴. این فایل رو هر چند وقت یکبار Download کنید ASP.NET 2.0 AJAX Futures January CTP (http://www.microsoft.com/downloads/details.aspx?FamilyID=4cb52ea3-9548-4064-8137-09b96af97617&displaylang=en)
بعد از دریافت فایلهای فوق به ترتیب نصبشون کنید

TAHA
10-11-2009, 09:47 AM
به این سایتها یه سری بزنید

Ajax Domain Search Blog (http://www.ajaxdomainsearch.com/blog/)

Relay: Ajax Directory Manager (http://ecosmear.com/relay/)

http://www.dynamicdrive.com/dynamici...axtabscontent/ (http://www.dynamicdrive.com/dynamicindex17/ajaxtabscontent/)

http://www.hotscripts.com/Ajax/Scrip...ons/index.html (http://www.hotscripts.com/Ajax/Scripts_and_Applications/index.html)

امیدوارم که به دردتان بخورند

TAHA
10-11-2009, 09:51 AM
بهتره به این سایتها یه سری بزنید

Ajax Domain Search Blog (http://www.ajaxdomainsearch.com/blog/)

Relay: Ajax Directory Manager (http://ecosmear.com/relay/)

http://www.dynamicdrive.com/dynamici...axtabscontent/ (http://www.dynamicdrive.com/dynamicindex17/ajaxtabscontent/)

http://www.hotscripts.com/Ajax/Scrip...ons/index.html (http://www.hotscripts.com/Ajax/Scripts_and_Applications/index.html)

امیدوارم که به دردتان بخورند