PDA

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



TAHA
10-11-2009, 09:44 AM
تعریف آژاکس
همانطور که گفته شد آژاکس یک فناوری است، آژاکس متشکل از چندین فناوری دیگر است که هر کدام در مسیری جدید و قوی می آیند. آژاکس از بهم پیوستن پنچ مورد زیر بوجود آمده است:


ارائه استاندارد پایه با استفاده از XHTML و CSS
نمایش پویا و تعامل با کاربر با استفاده از DOM(Document Object Model)
دستکاری و تبادل اطلاعات با استفاده از XML و XSLT
بازیابی غیر همزمان داده ها با استفاده از XMLHttpRequest
تقید همه چیز با هم (JavaScript)

مدل قدیمی یا در واقع کلاسیک وب همانند این کار می کرد که بیشترین فعالیت های کاربربا واســط (Interface) ، یــک درخــواست HTTP بود که به سـرور برگشت داده می شد. سرور بعضی پردازش ها از قبیل بازیابی اطلاعات را انجام می داد و آنگاه یک صفحه HTML به سمت مشتری باز می گرداند. این یک مدل اقتباس گرفته شده از اصل وب ــ که از رسانه ابر متن (HyperText) استفاده می کند است.
اما بطوریکه مشتاقان اساس آزمون کاربر می دانند ، چقدر ما وب را عالی می سازیم بدون اینکه نیازی به این عالی سازی برای نرم افزارهای کاربردی داشته باشیم؟
در شکل زیر دو مدل کلاسیک و آژاکس با هم مقایسه شده اند تا کمی متوجه اختلاف آنها و همچنین اساس کارAJAX شوید.
http://pnu-club.com/imported/mising.jpg
این رویکرد جدید مفاهیم فنی زیادی را میسازد اما یک آزمون کاربر عالی نمی سازد. تا زمانی که سرور در حال انجام کارهای خودش است کاربر باید چکاری انجام دهد؟ درست است ، او باید صبر کند و در هر گام یک عمل ، باید بیشتر زمان را صبر نماید.
واضح است اگر ما یک طراح وب بودیم نبایستی در این مدت کاربر را منتظر نگه داریم. یکبار واسط (Interface) در سمت مشتری بارگذاری می شود ، چرا باید فعل و انفعال کاربر دچار مکث شود در هر باری که برنامه کابردی نیاز به چیزی از سرور دارد ؟ در حقیقت چرا کاربر باید همیشه برنامه را در حال رفتن به سرور مشاهده کند؟

به چه سبب آژاکس متمایز است ؟
یک برنامه کاربردی آژاکس طبیعت Start-Stop-Start-Stop فعل و انفعال در وب را بااستفاده از مطرح کردن واسطی میان کاربر و سرور به نام موتور آژاکس بر طرف نموده است. بنظر میرسد که مانند اضافه کردن یک لایه به برنامه کاربردی است تا برنامه را کمتر به سمت سرور فرستاده و از آن پاسخ دریافت نمایید. اما برعکس این حالت درست می باشد.
درابتدای یک جلسه با یک سرور بجای بارشدن صفحه ابتدا مـرورگر موتور آژاکس را بار می نماید که معمولا با جاوا اسکریپت نوشته شده است و در یک فریم مخفی چیده شده است. این موتور مسئول بین رندر کردن واسطی که کاربر می بیند و ارتباط بر قرار کردن با سرور از طرف کاربر می باشد. این موتور به کاربر اجازه می دهد که مستقل از ارتباط برقرار کردن با سرور ، با برنامه تعامل داشته باشد. همچنین کاربر هرگز در یک صفحه جدید سفید مرورگر با یک آیکون ساعت شنی شروع نمی کند و در حال صبر نخواهد بود تا سرور کارهایش را انجام دهد.
در شکل زیر دو مدل را از لحاظ زمان مورد بررسی قرار داده ایم و در واقع نحوه بهبود سیستم کلاسیک وب با استفاده از مدل آژاکس را نمایش داده ایم.
http://pnu-club.com/imported/mising.jpg
هر عمل معمول کاربر یک درخواست HTTP تولید می کند و به صورت یک قالب جاوا اسکریپت بسوی موتور آژاکس فرستاده می شود. هر پاسخی به کاربر که احتیاج به گرفتن جواب از سرور ندارد مانند اعتبارسنجی ساده داده ها ، ویرایش داده ها در حافظه و غیره ، موتور آژاکس این عمل کاربر را در درون خود اداره کرده و به کاربر پاسخ می دهد.حال اگر موتور نیاز به چیزهایی از سرور برای پاسخ دادن به کاربر داشته باشد همانند دادن اطلاعات برای پردازش ، بارگیری کدهای اضافی واسط یا بازیابی اطلاعات جدید روند کار کمی دچار تغییر می شود ، به این صورت که موتور اینگونه نیازها را تبدیل به درخواست های غیر همزمانی می نماید که معمولا با استفاده ازXML و بدون متوقف کردن تعامل کاربر با برنامه می باشد.
در پایان این مقاله به این موضوع اشاره می کنم که در حال حاضر یکی از معروفترین سایتهایی که از این فناوری استفاده می نماید Google است که آخرین ورژن Google Maps را می توان به عنوان یکی از بارزترین نمونه های استفاده ازAJAX نام برد .
اینگونه پروژه ها ثابت می کند که AJAX فقط حرف فنی نیست و نمونه های عملی در جهان واقعی کاربردی دارد.

TAHA
10-11-2009, 09:44 AM
ببینید شما در محیط وب یک صفحه ای دارید یه چیزی توش تایپ میکنید بدون اینکه کل صفحه رفرش بشه مطلب تایپ شده شما میره به سرور و جواب بر میگرده در واقع یک پانل یا فرم کوچک رفرش میشه ! مثال واقعی در جی میل یا رایط جدید یا هو و ام اس ان، مثلا قسمت هواشناسی که اسم تهران را وارد میکنید فقط کادر کوچک هواشناسی رفرش میشه نه کل صفحه ! با استفاده از جاوا و ایکس ام ال این کار انجام میشه که بهترین سکوی اجرای ان برای یادگیری اولیه ویژوال استدیو/2008 یا 2005 است البته نسخه آزاکس را از سایت
atalas.asp.net
میتونید دانلود کنید
یک کار حرفه ای آزاکس در سایت باشگاه فوتبال پرسپولیس میتونید ببینید البته این سایت از مولفه های تجاری پیش ساخته استفاده کرده بنام ترولیک که این مولفه ها یا کامپوننت ها پولی هست ولی واقعا زیباست

اضافه کنم که کتاب برنامه نویسی حرفه ای آزاکس / حاجبی فلاح/ 7200تومان /کاوش پرداز مطلب خوبی در این مورد نوشته