اشنایی با ایجکس(اموزش ایجکس)
اشنایی با ایجکس(اموزش ایجکس)
5136 تعداد بازدید |  یکشنبه 14 تیر ماه 1394
ایا از دنیای کلاسیک وب خسته شده اید؟ آیا مایلید با چهره جدید وب آشنا شوید؟ آیا می خواهید با جدیدترین در سرزمین ای جکسی چهره سایت های وب مانند نرم افزارهای رومیزی به نظر می رساند. اکنون وب خانه دوم اطلاعات دیجیتالی شما است.
آیا از دنیای کلاسیک وب خسته شده اید؟ آیا مایلید با چهره جدید وب آشنا شوید؟ آیا می خواهید با جدیدترین در سرزمین ای جکسی چهره سایت های وب مانند نرم افزارهای رومیزی به نظر می رساند. اکنون وب خانه دوم اطلاعات دیجیتالی شما است. حالا که با داشتن یک خط اینترنت پرسرعت می توانید در تمام طول شبانه روز به نرم افزارهای رومیزی داشته باشند. به این ترتیب فاصله تفاوت میان نرم افزارهای دسکتاپ 9 نرم افزارهای آنلاین ناپدید می شود. دیگر لازم نیست وقتی روی دکمه SUBMIT کلیک می کنید منتظر بارگذاری مجدد صفحه
وب بمانید. همه چیز فورا و به سرعت اتفاق می افتد.
تصور کنید به صورت آنلاین در حال خواندن نامه های الکترونیکی خود در یکی از سایتهای یاهو یا جی میل هستید. فورا یادتان می افتد که باید به کسی نامه ای بفرستید. لازم نیست صفحه ای که در حال مطالعه ان هستید را ترک کنید و یا با استفاده از ترفند هایی مانند رایت کلیک و فرمان OPEN INNEWWINDOW یک پنجره جدید باز کنید و منتظر بارگذاری مجدد صفحه شوید. شما فقط می خواهید یک پنجره جدید باز کنید که
داخلش نامه خود را تایپ کنید
چه نیازی به بارگذاری مجدد آن همه اطلاعات جزئی و جنبی مانند لو گوی سایت، نام آیدی شما و ...) است که در اطراف اطلاعات اصلی به نمایش در آمده اند؟ ای جکسی همین کار را برای شما می کند. وقتی که نامه خود را ارسال کردید نیز فقط همان پنجره بسته می شود و چند بایت برای سایت مقصد ارسال می شود و اینترفیسی o صندوق پستی نامههای شما بدون این که تکان بخورد و یا دوباره به نمایش درآید همچنان پیش چشم شما و منتظر فرمان بعدی است. در دنیای ای جکسی دکمه های BACK و FORWARD مرورگر معانی و کاربرد خود را
تقریبا از دست می دهند.
همه دکمه های مورد نیاز داخلی اینترفیسی سایت موجود است. بر خلاف جهان .، در دنیای ای جکسی گشت و گذار در وب لزوما خطی نیست. اگر می خواهید از یک فروشگاه الکترونیکی خرید کنید، می توانید محصول مورد نظرتان را به روشی DRAG DROP داخلی سبد بیندازید و با فشردن دکمه نهایی، خرید خود را ثبت کنید. پیغام ثبت موفقیت آمیز سفارشی برای شما نمایش داده می شود و کار تمام است. لازم نیست از صفحه الف
به صفحه اب و سپسری از آنجا به صفحه بروید.
هم ولی احتمالی
آشنایی ASP کار به شما
۱۰ TI آموزشی گام به گام Ajax
ایجکس چیست؟
این واژه را اولین بار جسی جیمز گرت JESSEJAMESGARRETT)، برنامه نویسی از شرکت ADAPTIVE PATH در
ای جکسی یک زبان جدید نیست، بلکه یک تکنولوژی جدید برای تولید و خلق برنامه های وب سریعتر و بهتر و شکیلاتر با استانداردهای کنونیست. ای جکسی صفحات وب را جوابگوتر، پویا تر و قابل لمسی تر میکند چرا که با تعویضی عناصر در یک صفحه این قابلیت را به ما میدهد تا بدون بارگزاری مجدد کل صفحه به هدف مورد نظر بردسیه.
اینکه لازم باشد (همزمان یا متقارنبا این عملی، کلی آن صفحه از نو بارگذاری شود. این عملیات توسط شیء به نام - elas XMLHTTPREQUEST 45 پیشی، هنگام معرفی نسخه مرورگر اینترنت اکســپلورر وارد این نرم افزار شده و به دلیل قابلیت های جالبی که دارد، این روزها تمام مرورگرهای معروف و قدرتمند وب مانند بنویسید که در پشت صحنه یک صفحه وب اطلاعاتی را به سرور بفرستند و دادههایی را دریافت کنند.
ای جکسی اساسا رهاوردی از دنیای جاوا است و بار دیگر فناوری جاوا و زبان اسکریپت نویسی وابسته به آن را در کانون توجه برنامه نویسان قرار داده است. اما خبر خوب اینست که چون همه پلتفرم های برنامه نویسی وب از قبیلی ASPNET و sPاز جاوا اسکریپت و XML پشتیبانی می کنند، فناوری ای جکسی در همه این پلاتفرم ها پیاده سازی شده و حتی جالب است بدانید که تعداد ماژول های ای جکسی نوشته شده برای دات نت و بیشتر از انواع جاوایی آن است. مایکروسافت که سالها پیش از شیع XMLHTTPREQUEST در نرم افزار OUTLOOKWEBACCESS استفاده کرد و جزو اولین ترویج دهندگان این تکنیک به شمار می رود اخیرا AJAXEXTENSION معرفی کرده که مخصوصی و برنامه نویسی مبتنی بر ای جکسی است. اما چون ای جکسی بر اساسی جاوا کار می کند بدیهی است که جنبشی اپن سورسی و خیلی عظیم برنامه نویسان جاوا نیز بیکار نمانده و می کوشند تا دیر نشده AJAX را به قلب دنیای نرم افزارهای آزاد بیاورند و از انحصاری شدن آن جلوگیری کنند تا این فناوری به استاندارد جدید وب تبدیل شود. به نظر می رسد که آنها موفق بوده اند زیرا حتی پیاده سازی های دات نتی ای جکسی نیز اغلب به صورت اپن - سورسی است
مکانیزم Ajax جسی جیمز گرت در مقاله معروف خود شیوه عمل ایجکس را چنین توضیح می دهد: هر عمل از سوی کاربر که به طور معمولی موجب تولید یک تقاضای TTPآشود به جای ارسالی مستقیم به وب، موجب فراخوانی یک فرمان جاوا اسکریپتی و هدایت آن به موتور ایجکس می شود. هر نوع پاسخی به کاربر از سوی سرور مانند کنترل صحت داده های وارد شده در یک فرم ورود اطلاعات، ویرایشی اطلاعات در حافظه و حتی برخی از انواع هدایت کاربر در سایت) نیازی به ارسالی یک صفحه جدید به سمت کاربر ندارد و تنها همان قسمتی که باید تغییر کند بروز می شود. این تکنولوژی برنامه های اینترنتی را کوچکتر، قابل انعطاف تر و دوستانه تر میسارد. همانطور که اشاره شد ای جکسی تکنولوژی مرورگر است و مستقلی از نوع نرم افزارهای سرویس دهنده کار میکند.
به طور سنتی وقتی کاربر فرمی را پر می کند و به سایت ارسال می کند، وب سرور با بارگذاری مجدد یا تازه سازی صفحه REFRESH) و نمایشی یک پیغام و یا نتیجه پردازش اطلاعات، به او پاسخ می دهد و به همین دلیل هم
وقت سرور برای ارسال کل محتوای آن صفحه گرفته می شود و هم کاربر باید برای دریافت کامل آن صفحه
فصلی او درباره ۱۱El Ajax
منتظر بماند؛ که نتیجه آن کاهش بازده سرور، مصرف پهنای باند و تلف شدن وقت و هزینه است. اما به کارگیری تکنیک ای جکسی این مشکلات را به طرز قابل ملاحظهای کاهش می دهد.
گرت می نویسد: اگر موتور ای جکسی برای پاسخ دادن به کاربر نیازمند گرفتن اطلاعاتی از سمت سرور است، اگر قرار است داده ها برای پردازشی به سرور ارسال شوند، اگر لازم است کدهای اضافی برای نمایشی تغییرات اینترفیس بارگذاری شوند، اگر نیاز به بازیابی و بیرون کشیدن اطلاعات از بانک اطلاعاتی باشد، همه این کارها به طور آسنکرون و با استفاده از ، بدون اینکه وقفه ای در تماس میان کاربر و اینترفیسی نرم افزار به وجود آید
توسط موتور ایجکسی انجام خواهد شد.
مزایا و معایب Ajax
طی سالهای اخیر صنعت نرم افزار در عرصه وب به سوی تولید سیستمهایی حرکت کرده است که هرچه بیشتر مستقل از نوع سیستم عامل و مرورگری باشد که کاربر استفاده می کند. نگاهی به سیر تحولات مربوط به زبانهای برنامه نویسی وب مانند PHP و ASP از یک سو و کاهش اقبالی برنامه نویسان به فناوریهایی همچون
ACTIVEX و JAVA APPLET در سمت کلاینت از سوی دیگر، موید این نکته است.
در واقع یکی از دلایل مهم توجه دنیای نرم افزار به فناوری ای جکسی همین است. این دستاورد برخلاف فناوریهایی مانند MACROMEDIAFLASH نیازمند نصب هیچ نرم افزار الحاقی و اضافی روی مرورگر نیست و همین حالا بستر لازم برای پیاده سازی ای جکسی روی میلیونها سایت و مرورگر وب وجود دارد. در این میان، اتکای ای جکسی بر فناوری XML از اهمیت ویژهای برخوردار است. زیرا XML ماهیتا یک فناوری باز است که انعطاف پذیری زیادی دارد و هم اکنون در مقیاسی گسترده ای در نرم افزارهای تحت وب، از سیستمهای تجارت الکترونیک گرفته تا نرم افزارهای مدیریت محتوای سایت های وب و فناوری هایی همچون وب سرویسی، RSS و حتی پادکستینگ مورد استفاده قرار می گیرد. ظهور ای جکسی نشان می دهد که فناوری XML هنوز قابلیتهای کشف نشده ای دارد که همچنان بکر می توانند منشـا تحولات بزرگ در سیستم های اطلاعاتی و ارتباطی باشند. مزیت مهم دیگر AJAX بهره گیری آن از استاندارد CSS است. استانداردی که به تنهایی منشا تحولات دیگری در زمینه اینترفیسی نرم افزارهای وب است و در آینده بسیار نزدیک به وجه غالب صفحه آرایی و اینترفیسی سایت های وب تبدیل خواهد شد. توجه ای جکسی به CSS نشان می دهد که این فناوری همزمان با به کارگیری جاوا اسکریپت و XML برای مدیریت داده ها، از استاندارد پیشرفته ای برای اینترفیسی و با استفاده می کند و می توان حقیقتا آن را یک فناوری مرتبط با اینترفیسی و نه فقط تعامل میان کلاینت و سرور) تلقی کرد. با این وجود، ای جکسی معایبی نیز دارد و این معایب موضوع بحث بسیاری در محافل برنامه نویسی روی اینترنت است. یکی از مسائلی که به عنوان ایراد مطرح شده، دشواری تغییر عادت کاربران در استفاده از کلیدهای BACK وFORWARD و REFRESH در مرورگرهای وب است. یکی از مشکلات برنامه نویسان وب همواره این است که یا باید کاربر را عادت دهند که هرچه کمتر از این دکمه ها استفاده کند و یا نرم افزار خود را طوری بنویسند که اگر کاربر سهوا یا عمدا از این دکمه ها استفاده کرد، نرم افزار دچار اشتباه و خطا در تفسیر عملی کاربر نشود.
پیاده سازی Ajax
یکی دیگر از مشکلاتی که در ارتباط با ایجکس به نظر می رسد اینست که کار زیادی از برنامه نویسی می طلبد و در حال حاضر اجرای موفقیت آمیز یک اینترفیسی حرفه ای مبتنی بر ای جکسی کاری بسیار دشوار و وقت گیر است. یعنی AJAX به همان اندازه که کار بازدید کننده ها را آسان می کند، کار برنامه نویسان را مشکل می کند! با
پارهای اوقات بسیار صفحاتی اصلا حالت با اى جکسن مرورگره دهند. این عمل با ارس جایگزینی قسمتی از : نیز عموما XML
هم میتوان چنین است
-
این حال ای جکسی روی پلتفرم های مختلف پیاده سازی شده و مجموعه ابزارهای مختلفی برای تسهیلی کار برنامه نویسان عرضه شده است تا تجربه شیرین تری از AJAX داشته باشند. برنامه نویسان ASPNET در صورتی که از نسخه دات نت .۱ استفاده می کنند می توان از ماژولی AJAX.NET استفاده کنند که اولین پیاده سازی دات نتی ای جکسی و رایگان است. مایکروسافت در ۲۰۰ASPNET این فناوری را با نام AJAXEXTENSION وارد پلتفرم کرده است که علاقه مندان می توانند یکراست سراغ آن بروند. برای پلتفرم جاوا نیز چندین پیاده سازی مختلف، اغلب اپن سورسی، وجود دارد. از جمله AJAXANYWHERE و AJAXTAGS ببینید. همچنین چندین پیاده سازی مخصوصی PHP می توانید پیدا کنید. ماژول های CPANT و XAJAX از آن جمله اند. ماژول CPAINT برای ASP نیز قابل استفاده است. چند ماژول دیگر هم مانند GENEXUS وجود دارند که مالتی پلتفرم هستند. برای هر یک از پلتفرم های COLDFUSION PERL و PYTHON نیز دست کم یک پیاده سازی معروف وجود دارد.
تمام عناصر معرفی شده توسط همه مرورگرهای شناخته شده قابل اجرا و تفسیر است.
برنامه های وب مزایای بسیاری نسبت به برنامه های تحت ویندوز دارند. چرا که شما در آن واحد میتوانبد هزاران مراجعه کننده داشته باشد و همچنین همانطور که میدانید نصب و استفاده از این برنامه ها بسیار آسان است. گرچه برنامه های وب نمی توانند همانند برنامه های سنتی و تحت ویندوز دوستانه و کاربرپسند باشند.
با ای جکسی برنامه های شام میتواند غنی تر شودکوچک تر، سریعتر و راحت تر
شما نیازی ندارید چیز جدیدی فرا بگیرید. ای جکسی بر اساسی استانداردها و عناصر عمومی بنا نهاده شده که برنامه نویسان سالها از آن استفاده می کردند. عموم برنامه ها و صفحات وب کنونی میتوانند با ای جکسی بازنویسی شوند بجای آنکه حالت سنتی و قدیمی HTML را حفظ نمایند.
در گذشته نه چندان دور در یک صفحه HTML در خواست ها با کلید " ارسالی " ( SEND) که در فرمهای وب (مثل فرمهای درخواست، فرمهای سفارشی و.) به سرویس دهنده ارسال می شد و سرویس دهنده پس از تجزیه و تحلیلی صفحه وب کاملا جدیدی برای کاربر باز پس می فرستاد. پس از آنجا که برای هر ارسالی ، سرویس دهنده مجبور بود تا یک صفحه جدید را برگرداند، صفحات سنتی در
پاره ای اوقات بسیار کند میشدند که به مزاج بسیاری کاربران سازگار نبود و آنان را آزار میداند چرا که جنین
صفحاتی اصلا حالت دوستانه با کاربر ندارند.
با ای جکسی مرورگرها دیگر میتوانند درخواستها و ارسالها را بدون بارگزاری مجدد کل آن صفحه انجام دهند. این عمل با ارسالی درخواست مبتنی بر وب به سرویس دهنده در پشت صحنه و دریافت ان و سپسی جایگزینی قسمتی از صفحه که نیاز به تغییر بوده انجام میشود که این کار بر عهده جاوا اسکریپت است. XML نیز عموما به عنوان قالبی برای دریافت اطلاعات از سرویسی دهنده به کار میرود. گرچه از متون ساده هم میتوان چنین استفاده ای کرد. شما در بخش بعدی بیشتر با چند و چون کار آشنا میشوید