نمایش نتایج: از شماره 1 تا 2 , از مجموع 2

موضوع: تکنولوژی AJAX چیست؟

  1. #1
    کاربرسایت SAREH آواتار ها
    تاریخ عضویت
    ۸۷-۰۲-۳۰
    نوشته ها
    605
    سپاس ها
    0
    سپاس شده 0 در 0 پست

    تکنولوژی AJAX چیست؟

    تکنولوژی AJAX چیست؟

    واژه 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 به این قرارند [1]:

    oرخدادهای کوچک سمت سرور: اجزای درون یک برنامه وب میتوانند، درخواستهایکوچکی برای سرور ارسال کنند، اطلاعات مورد نیازشان را از سرور دریافتکنند، و هر قسمت از صفحه را که لازم است بر اساس DOM بهروز کنند، بدوناینکه تمام صفحه دوباره بارگذاری و ترسیم شود.

    o غیر همروندبودن: درخواستهایی که به سرور ارسال میشود، باعث مسدود شدن صفحهٔ درونمرورگر کلاینت نمیشوند. کاربر میتواند به کار با قسمتهای دیگر برنامهادامه دهد و هنگامی که پاسخی از سرور دریافت شد، با بهروز کردن رابطکاربر، به کاربر اطلاع داده میشود.

    o عکسالعمل برای هر رخدادی:تقریباً میتوانیم برای تمام رخدادهایی که کاربر بوجود میآورد، با سرورارتباط برقرار کنیم. مرورگرهای مدرن اکثر رخدادهایی را که سیستم عاملاجازه میدهد دریافت میکنند: کلیک کردن موس، حرکت موس روی شی، زدن یککلید و غیره. هر رخدادی میتواند باعث ارسال یک درخواست به صورت غیرهمروند برای سرور شود.

    کاربردها

    حتماً در بخش پستالکترونیک وبگاه یاهو دیدهاید که با تایپ حروف اول نام دوستانتان نامچند نفر از آنها از پایگاه دادهها فراخوانی شده و به شما نمایش دادهمیشود. این کار بدون اینکه صفحه بارگذاری مجدد گردد انجام میشود. بهزبان سادهتر، آژاکس فناوریای ست که در آن با بارگذاری شدن یک صفحه،امکان فراخوانی برنامههای سمت رایانهٔ خادم (Server) بدون بارگذاری مجددصفحه وجود دارد. برنامههای آژاکس راهی برای ساخت برنامههایی تعاملی دروب فراهم کردهاند. برای این کار کافیست یک عنصر فعال که قابل فراخوانیدر جاوااسکریپت باشد بتواند تحت کنترل جاوااسکریپت با سرور تماس گرفته واطلاعات درخواست کند. بهعنوان مثال این عنصر فعال میتواند یک برنامه ASPیا JSP یا... را فراخوانی کرده و نتایج آن را از طریق جاوااسکریپت در صفحهجاری تأثیر دهد. عنصر فعال قبل از معرفی آژاکس میتوانست یک ActiveX یاجاوا اپلت ساده باشد اما اکنون این عنصر آبجکت XMLHttpRequest است که درمجموعه ابزارهای XML مایکروسافت قرار دارد.

    امروزه تقریباً همه مرورگرهای معروف از جمله IE از این تكنولوژی استفاده میكنند.

  2. #2
    کاربرسایت PARS آواتار ها
    تاریخ عضویت
    ۸۷-۰۲-۲۵
    نوشته ها
    666
    سپاس ها
    0
    سپاس شده 0 در 0 پست

    Re: تکنولوژی AJAX چیست؟

    Ajax چیست؟
    اگر برنامه نویس وب هستید، لابد خبر دارید که این روزهاهمه درباره Ajax صحبت می کنند. بعضی معتقدند Ajax یکی از ارکان فنی موججدیدی است که به Web 2.0 معروف شده است. بعضی از سایت های بزرگ مانند یاهوو گوگل هم اکنون Ajax را به خدمت گرفته اند، انجمن ها و تریبون های آنلاینمملو از مقالات و اظهارنظرهای مربوط بهAjax است و همزمان تلاش های وسیعیدر جریان است تا این فناوری جدید همچنان به صورت اپن سورس باقی بماند وانحصاری نشود.
    Ajax چیست؟
    واژه Ajax با تلفظ <ای جکس> یا <ای ژاکس>سرنام عبارت Asynchronous JavaScript and XML و به معنی <ترکیبنامتقارن جاوا اسکریپت و>XML است. ماهیت صفحات وب و پروتکل HTTP بهگونه ای است که به طور معمول وقتی درحال وب گردی هستیم، به ازای هر کنش وواکنش میان ما و سایتی که در حال کار با آن هستیم، کل یک صفحه وب از نوبارگذاری و تازه سازی (refresh) می شود.
    ای جکس فناوری جدیدی است که تغییر محسوسی را در اینسناریو به وجود می آورد؛ به این ترتیب که به جای بارگذاری مجدد کل صفحه،فقط قسمتی تغییر می کند که قرار است اطلاعات جدید را به نمایش درآورد وکلیه عملیات ارسال اطلاعات و دریافت نتایج در پشت صحنه انجام می شود. درنتیجه هیچ گاه صفحه سفید و خالی وب در فواصل کنش و واکنش های هنگام کار بامرورگر دیده نمی شود و احساسی مشابه تجربه کار با یک نرم افزار دسکتاپ بهکاربر دست می دهد.
    جادوی ای جاکس چیزی نیست جز یک فکر بکر و آن هم ترکیب کردن جاوا اسکریپت و XML در قالب یک موجود نرم افزاری جدید.
    اصطلاح Ajax را اولین بار کارشناسی از شرکت AdaptivePath به نام جسی جیمزگرت در مقاله ای با عنوان <ای جکس؛ رهیافت جدیدیدر برنامه های تحت وب> مطرح کرد و خیلی سریع مورد استقبال گستردهبرنامه نویسان وب در سراسر جهان قرارگرفت. اعتقاد عمومی این است کهتاریخچه به کارگیری تکنیک مذکور به پیدایش نرم افزار Outlook WebAccess واستفاده از فرمان XMLHttpRequest که مایکروسافت ابداع کرده و در نرم افزاراینترنت اکسپلور به کار رفته است، برمی گردد. اما امروزه اغلب مرورگرهایمهم و شناخته شده (از جمله فایرفاکس) از آن پشتیبانی می کنند و دیگر یکفناوری محدود به اینترنت اکسپلورر نیست.
    چرا Ajax این قدر اهمیت دارد؟
    فناوری ای جکس جدید است و شگفت انگیز به نظر می رسد.ولی در حقیقت کل این شعبده بر اساس فناوری هایی بنا شده است که هم اکنونموجودند: جاوا اسکریپت و XML. هر دوی این فناوری ها تا حد زیادی باز هستندو منحصر به شرکت خاصی نیستند. به همین دلیل این روزها تمام محافل دنیایبرنامه نویسی مملو از مقالات و تحلیل هایی درباره Ajax است. به عنواننمونه می توانید صفحه نخست سایت موسوم به <کانال شبکه برنامه نویسانسان> را بازکنید.
    بیشتر این صفحه (در زمان نگارش این یادداشت) به مقالاتو مطالب متنوعی درباره Ajax اختصاص یافته است. مجلات برنامه نویسی نیزمقالات متعددی در این زمینه منتشر کرده اند و سایت های معروفی مانند O'Reilly و xml.com نیز در این باره مطلب دارند.
    بنابراین ظرفیت بالایی برای تبدیل ای جکس به یکاستاندارد جهانی وجود دارد. از این رو قرار است در تاریخ سیزدهم مارسسمینار مهمی در زمینه Ajax برگزار شود. اگر همین الان به سایتajaxseminar.com مراجعه کنید، متوجه می شوید که علاوه بر طراح این تکنیک،چندین برنامه نویس شاخص از شرکت های بزرگی همچون یاهو در آن شرکت خواهندداشت.
    این فناوری از یک جنبه دیگر نیز اهمیت دارد. به دلیلعدم نیاز به بارگذاری مجدد کل یک صفحه وب، مقدار داده هایی که لازم استبرای تکمیل یک Interaction میان کاربر و سایت مبادله شود، به شدت کاهش مییابد و این به معنی افزایش محسوس سرعت نرم افزارهای تحت وب، سهولت بهکارگیری اینترفیس های مبتنی بر ای جکس و کاربرپسندترشدن آن ها می شود. بههمین دلیل این روزها اکثر پورتال های بزرگ (مانند یاهو) مشغول طراحیاینترفیس های مبتنی بر Ajax هستند.
    با این همه مزایای ای جکس به همین موارد ختم نمی شود.تصور کنید وقتی در طول شبانه روز میلیاردها بار فرآیند بارگذاری مجددصفحات وب تعاملی در شبکه اینترنت تکرار می شود، استفاده از ای جکس چگونهموجب آزاد شدن پهنای باند اینترنت و در نتیجه میلیاردها دلار صرفه جوییاقتصادی در این زمینه می شود و این به نوبه خود انقلابی در عرصه وب و فضایسایبر به شمار می رود. این تحول در شرایطی اتفاق می افتد که همزمان فناوریهای اینترنت پرسرعت همچون ADSL به شدت در حال رشد هستند.
    حال تصور کنید اگر فناوری ای جکس در مقیاس گسترده ایمورد استفاده نرم افزارهای تحت وب قرارگیرد. آنگاه افزایش سرعت کار بااینترنت چند برابر خواهد شد. چنین تحولی می تواند اینترنت را به کامپیوتردوم کاربران تبدیل کند. به گونه ای که برای آن ها اجرای یک نرم افزار ازروی وب تفاوت محسوسی با اجرای آن از روی کامپیوتر دسکتاپ نداشته باشد. دراین صورت ممکن است واقعا بخش مهمی از توان پردازشی نرم افزارها، چه از نوعدسکتاپ و چه از نوع تحت وب به سیستم های موسوم به Web Service واگذار شود.از این رو کسانی که مبتکر و مشوق ایده وب سرویس بوده اند، این روزهاانگیزه تازه ای برای سرعت بخشیدن به این فناوری پیدا کرده اند و تلاش میکنند دو فناوری ای جکس و وب سرویس را به یکدیگر پیوند دهند و راهکارهایتازه ای بیافرینند.
    کدام سایت ها از ای جکس استفاده کرده اند؟ دنیایبرنامه نویسی وب هنوز درگیر هیجانات مربوط به آشنایی با این پدیده است ودر حال بررسی مشکلات تکنیکی و هضم و جذب آن در بافت برنامه های تحت وب میباشد. به همین دلیل میزان استفاده عملی از آن چندان گسترده نیست. اما چونکارایی ای جکس دیگر برای همه ثابت شده است، حرکت های بزرگی در سراسراینترنت به سمت استفاده از این فناوری در جریان است. از جمله اینترفیسنسخه دوم Yahoo Mail که به نسخه بتا معروف است و فعلا در دسترس کاربرانسرویس غیر رایگان یاهو قراردارد، از همین فناوری استفاده می کند که بهزودی اینترفیس جدید در دسترس عموم قرار می گیرد. سرویس Gmail و Google Mapنیز از این فناوری استفاده می کنند.

اطلاعات موضوع

کاربرانی که در حال مشاهده این موضوع هستند

در حال حاضر 1 کاربر در حال مشاهده این موضوع است. (0 کاربران و 1 مهمان ها)

موضوعات مشابه

  1. نحوه استفاده از کنترل های ASP.NET AJAX
    توسط PARS در انجمن AJAX/CSS
    پاسخ ها: 0
    آخرين نوشته: جمعه ۳۰ بهمن ۸۸, ۱۷:۳۳
  2. تشیع چیست؟ شیعه کیست؟
    توسط SHAHRIAR-NOVIN در انجمن مذهبی religions
    پاسخ ها: 1
    آخرين نوشته: یکشنبه ۳۰ فروردین ۸۸, ۲۱:۲۰
  3. خون این بچه به گردن کیست؟
    توسط GHOLNAZ در انجمن بایگانی اخبار حوادث
    پاسخ ها: 0
    آخرين نوشته: شنبه ۱۸ آبان ۸۷, ۲۳:۴۹
  4. جسم اثیری چیست؟
    توسط ARVAH در انجمن تماس با ارواح
    پاسخ ها: 0
    آخرين نوشته: جمعه ۱۰ خرداد ۸۷, ۱۹:۵۵
  5. با AJAX ویندوز شما همیشه همراه شماست
    توسط hamid192 در انجمن معرفي سايت
    پاسخ ها: 0
    آخرين نوشته: جمعه ۰۷ دی ۸۶, ۰۰:۵۰

مجوز های ارسال و ویرایش

  • شما نمیتوانید موضوع جدیدی ارسال کنید
  • شما امکان ارسال پاسخ را ندارید
  • شما نمیتوانید فایل پیوست کنید.
  • شما نمیتوانید پست های خود را ویرایش کنید
  •