دانلود مقاله Ajax تحولی بزرگ در عرصه وب

Word 750 KB 18269 87
مشخص نشده مشخص نشده کامپیوتر - IT
قیمت قدیم:۳۰,۰۰۰ تومان
قیمت: ۲۴,۸۰۰ تومان
دانلود فایل
کلمات کلیدی: Ajax - تحولی بزرگ در عرصه وب - وب
  • بخشی از محتوا
  • وضعیت فهرست و منابع
  • اینترنت و مهمترین سرویس آن وب علاوه بر این که حیات بشری را در هزاره سوم دستخوش تحولات فراوانی کرده است ، توانسته است منشاء تحولات گسترده ای در سایر حوزه های فناوری گردد .

    در واقع ، تحول در زندگی بشریت مدیون پیشرفت در سایر حوزه های فناوری‌ است .

    یکی از این حوزه ها ، صنعت نرم افزار است .


    برای آشنائی با این تحول بد نیست مروری سریع داشته باشیم به گذشته وب و نرم افزار تا از این رهگذر بتوانیم ضرورت ایجاد فناورهای جدیدی نظیر Ajax ( برگرفته شده از Asynchronous JavaScript And XML ) را بهتر درک کنیم .


    مروری بر وب ، نرم افزار و تاثیر متقابل آنها بر یکدیگر
    موجودات جدیدی که ما امروزه آنها را با نام برنامه های وب می شناسیم ، ماحصل تاثیر وب بر نرم افزار و رشد رو به فزاینده استفاده از اینترنت در متن زندگی ، ماحصل تاثیر نرم افزار بر وب است .

    اجازه دهید ببینیم موضوع از کجا و با چه مختصاتی شروع گردید و هم اینک در چه وضعیتی به سر می بریم .


    وب ایستا : زمانی که تیم .

    برنرز لی در سال 1990 اولین پیشنهاد خود در رابطه با وب را ارائه کرد ، ایده کار بسیار ساده بود : ایجاد یک شبکه از اطلاعات متصل شده به یکدیگر با استفاده از ابرمتن ها و URIs ( برگرفته شده از Uniform Resource Identifiers ) .

    وب در آغاز به عنوان یک رسانه اشتراک اطلاعات مطرح گردید تا از طریق آن دانشمندان و محققین بتوانند دانش و اطلاعات را بین خود به اشتراک گذاشته و نتایج تحقیقات را با یکدیگر مبادله نمایند .

    ارائه دهند گان با استفاده از یک استاندارد مستند سازی ، اطلاعات خود را تهیه و آنها را به مخاطبان خود ارائه می کردند .

    در آغاز برای استاندارد مستند سازی از ابزاری که در آن زمان خود هنوز استاندارد نشده بود استفاده می گردید .

    HTML ، ابزاری است که با بکارگیری مجموعه ای از تگ ها ، استاندارد لازم جهت نمایش یک مستند در نرم افزارهای نمایش دهنده ( مرورگرها ) را فراهم می نماید .

    نرم افزارهای نمایش دهنده ، مجهز به مفسرهائی جهت تفسیر تگ ها و نمایش اطلاعات موجود در مستند بر اساس تعاریف از قبل تعریف شده شدند .

    در آن زمان که به سال های ابتدائی دهه 90 میلادی برمی گردد ، چیزی با نام برنامه های وب وجود نداشت و وب به عنوان رسانه ای جهت اشتراک و مبادله اطلاعات مطرح بود .

    تمامی تعاملات در عرصه وب محدود به درخواست یک مستند توسط سرویس گیرنده و ارسال آن توسط سرویس دهنده بود .


    وب پویا با تمرکز بر روی پردازش های سمت سرویس گیرنده : در ادامه ، نیاز به انجام برخی پردازش های اولیه مطرح گردید .

    با توجه به این که اینترنت از یک بستر سرویس گیرنده و سرویس دهنده ( client server based) به منظور دریافت درخواست کاربر و پاسخ به آن استفاده می کرد ، طراحان و پیاده کنندگان برای تحقق پردازش ها بر روی دو گزینه متمرکز شدند : انجام پردازش ها در سمت سرویس گیرنده و یا سمت سرویس دهنده .

    در آغاز ، برای انجام پردازش ها بر روی سرویس گیرنده متمرکز شدند .

    با این هدف که بتوان پردازش های مورد نیاز را ( با حوزه ای که در آن زمان تعریف شده بود ) ، در سمت سرویس گیرنده انجام داد .

    برای تحقق خواسته فوق لازم بود که بستر و ابزارهای لازم در بطن مرورگر ها ایجاد گردد .

    ظهور فناورهائی نظیر Html-DOM ، جاوااسکریپت ، CSS ( برگرفته شده از cascading style sheets ) و DHTML ( برگرفته شده از Dynamic HTML ) از جمله مهمترین تلاش های انجام گرفته در آن زمان برای تحقق پردازش ها در سمت سرویس گیرنده بود .

    برای آشنائی بیشتر با تلاش های انجام گرفته در آن زمان بد نیست مروری سریع داشته باشیم به آنچه طی سالیان گذشته در عرصه وب اتفاق افتاده است .


    • عرضه جاوا اسکریپت : Netscape Navigator اولین مرورگر وبی بود که پس از طراحی و پیاده سازی موفقیت آمیز توانست به عنوان کاتالیزوری در رشد وب و عرضه فناوری های مرتبط با آن نقش بسیار مثبتی را ایفاء‌ کند .

    اغلب سازمان ها و شرکت ها از مرورگر فوق به عنوان معیار استاندارد خود برای پیاده سازی فناوری های جدید استفاده می کردند .

    یکی از این فناوری ها ، جاوا اسکریپت بود .


    جاو ااسکریپت توسط Brendan Eich از نت اسکیپ ایجاد و نسخه شماره دو آن در سال 1995 عرضه گردید .

    برای اولین مرتبه ، پیاده کنندگان قادر به ایجاد صفحات وبی شدند که می توانست با کاربر تعامل برخورد نماید .

    استفاده از جاوا اسکریپت برای معتبر سازی داده در سمت سرویس گیرنده و حذف برخی مبادلات غیره ضروری بین سرویس گیرنده و سرویس دهنده از جمله مهمترین دستاورد بکارگیری جاوا اسکریپت در آن زمان بود .

    بدین ترتیب نطفه پردازش های ساده در سمت سرویس گیرنده به کمک جاوا اسکریپت بسته شد .

    قابلیت فوق در زمانی که اکثر کاربران اینترنت از طریق یک مودم با سرعت 8 .

    28 ( Kbps ) به شبکه وصل می شدند ، باعث می شد که تعداد دفعاتی که کاربران مجبور به انتظار برای دریافت یک پاسخ از سرویس دهنده باشند ، کاهش یابد .

    تحول فوق اولین مرحله جدی به سمت رویکرد Ajax در آن زمان بود .


    • ایجاد فریم : در نسخه اولیه HTML با هر سند به عنوان یک موجودیت رفتار می شد تا این که در نسخه شماره چهار فریم ها معرفی گردیدند .

    با استفاده از فریم ها نمایش یک صفحه وب می توانست مشتمل بر بکارگیری مجموعه ای از سایر صفحات وب باشد .

    ایده فوق یک اصلاح ساختاری اساسی در خصوص نحوه نمایش یک صفحه وب بود .

    Netscape Navigator 2.0 اولین مرورگری بود که از فریم ها و جاوا اسکریپت حمایت کرد .

    این یک مرحله جدی به سمت رشد و توسعه Ajax در آن زمان بود .


    • با توجه به این که یک فریم ، یک درخواست مجزاء را برای سرویس دهنده ایجاد می کرد ، قابلیت کنترل یک فریم و محتویات آن با استفاده از جاوا اسکریپت دنیای جدیدی را پیش روی طراحان و پیاده کنندگان صفحات وب قرار داد .


    • روش فریم مخفی : به موازات این که پیاده کنندگان درگیر نحوه استفاده از فریم ها شدند ، یک روش جدید با هدف تسهیل در امر ارتباط بین سرویس گیرنده و سرویس دهنده مطرح گردید .

    روش فریم مخفی شامل تنظیم یک frameset با طول و یا عرض صفر پیکسل است که هدف اساسی آن انجام فرآیند مقداردهی اولیه با سرویس دهنده بود .

    فریم مخفی شامل یک فرم HTML با فیلدهای خاصی است که می توانست بطور اتوماتیک توسط جاوا اسکریپت تکمیل و برای سرویس دهنده ارسال گردد .

    زمانی که فریم از سرویس دهنده مراجعت می کرد ، یک تایع دیگر جاوا اسکریپت فراخوانده می شد تا اعلام نماید که داده از سمت سرویس دهنده برگردانده شده است .

    روش فریم مخفی ، اولین مدل درخواست و پاسخ غیرهمزمان را برای برنامه های وب به ارمغان آورد ( اولین رویکرد به مدل ارتباطی Ajax ) .


    Dynamic HTML و DOM : تا سال 1996 ، وب یک دنیای ایستا را تجربه می کرد و برای تعامل محدود با کاربر از جاوا اسکریپت و روش فریم های مخفی استفاده می گردید .

    همچنان امکان تغییر در محتویات یک صفحه بدون نیاز به load مجدد آن از سرویس دهنده وجود نداشت .

    در ادامه IE 4.0 ( برگرفته شده از Internet Explorer ) توسط شرکت مایکروسافت ارائه گردید .

    در این نسخه علاوه بر بکارگیری اکثر فناوری های استفاده شده در Netscape Navigator ، یک ویژگی مهم دیگر با نام DHTML ( برگرفته شده از Dynamic HTML ) نیز ارائه گردید .

    DHTML به پیاده کنندگان اجازه می داد تا بتوانند هر بخشی از یک صفحه مستقر شده در حافظه سرویس گیرنده را با استفاده از جاوا اسکریپت تغییر دهند .

    DHTML به همراه عرضه غیره منتظره CSS ( برگرفته شده از cascading style sheets ) به وب و نحوه پیاده سازی صفحات وب یک نیروی تازه داد.

    پیاده کنندگان توانستند با ترکیب DHTML و روش فریم های مخفی هر بخشی از یک صفحه را با استفاده از اطلاعات دریافت شده از سرویس دهنده refresh نمایند .

    ویژگی فوق در زمان خود توانست یک تحول بزرگ در عرصه وب را ایجاد نماید .

    در ادامه ، DOM ( برگرفته شده از Document Object Model ) ارائه گردید .

    برخلاف DHTML که صرفا" امکان تغییر بخش هائی خاص از یک صفحه وب را فراهم می کرد ، DOM دارای یک هدف بلندپروازانه دیگر بود .

    هدف DOM ارائه یک ساختار برای تمامی صفحه بود .

    انجام عملیات و یا پردازش بر اساس ساختار فوق ، امکان تغییر یک صفحه را فراهم می آورد .

    این مرحله بعدی به سمت Ajax بود .

    Iframes : با این که روش فریم مخفی بطور غیرقابل پیش بینی متداول گردید ، ولی دارای چالش های مختص به خود بود .

    افرادی می بایست زمان زیادی را صرف نوشتن یک frameset می کردند تا شرایط استفاده از فریم های مخفی فراهم گردد .

    زمانی که عنصر در سال 1997 و به عنوان بخشی از نسخه رسمی HTML 4.0 ارائه گردید ، یک قدم اساسی دیگر به سمت انقلاب بر روی وب حرکت شد .

    در مقابل تعریف frameset ، پیاده کنندگان قادر به استفاده از فریم ها در هر مکانی از صفحه شدند .

    بدین ترتیب پیاده کنندگان توانستند از iframe نامرئی ( با بکارگیری قابلیت های CSS ) در یک صفحه استفاده نمایند و شرایط عملیاتی لازم جهت مبادله داده بین سرویس گیرنده و سرویس دهنده را فراهم نمایند .

    زمانی که نسخه نهائی DOM در IE 5,0و Netscape 6.0 پیاده سازی گردید ، قابلیت ایجاد فریم ها به صورت پویا نیز فراهم گردید .

    در چنین حالتی از یک تابع جاوا اسکریپت به منظور ایجاد یک iframe ، ایجاد یک درخواست و دریافت پاسخ ( جملگی بدون نیاز به اضافه کردن تگ های HTML اضافه در یک صفحه ) استفاده می گردید .

    این روش معروف به روش iframe مخفی گردید .

    XMLHttp : پیاده کنندگان مرورگر شرکت مایکروسافت پس از مشاهده عمومیت استفاده از روش هائی‌ نظیر فریم مخفی و iframe مخفی ، تصمیم گرفتند یک ابزار بهتر جهت تعامل بین سرویس دهنده و سرویس گیرنده را ارائه نمایند .

    این ابزار به شکل یک اکتیوایکس و با نام XMLHttp در سال 2001 ارائه گردید .

    زمانی که مایکروسافت حمایت خود از XML را از طریق یک کتابخانه با نام MSXML آغاز کرد ، شی XMLHttp نیز به همراه آن ارائه گردید .

    با این که شی‌ فوق به همراه خود نام XML را یدک می کشید ولی چیزی بمراتب بیشتر از روشی برای انجام عملیات بر روی داده XML بود .

    شی فوق همانند یک درخواست HTTP بود که می توانست توسط جاوا اسکریپت کنترل گردد .

    پیاده کنندگان دارای قدرت دستیابی به کدهای وضعیت HTTP و هدر همانند داده برگردانده شده از طریق سرویس دهنده بودند .

    داده می توانست به صورت XML ساختیافته ، اشیاء سریال شده جاوا اسکریپت و یا سایر فرمت های مورد نظر پیاده کننده باشد .

    در مقابل استفاده از فریم های مخفی و یا iframe ، این امر میسر گردید که به سرویس دهنده از طریق کد و توسط جاوا اسکریپت دستیابی داشت ( مستقل از چرخه load و reload صفحه ) .

    شی XMLHttp پس از مدتی به عنوان یک موفقیت بزرگ برای پیاده کنندگان مرورگر IE عرض اندام کرد .

    به موازات متداول شدن شی فوق ، پیاده کنندگان در Mozilla نسخه اختصاصی از XMLHttp را پیاده سازی کردند .

    در مقابل اجازه دستیابی از طریق اکتیو ایکس ، پیاده کنندگان موزیلا متدها و خصلت ها را در یک شی ذاتی مرورگر و با نام objectXMLHttpRequest ارائه کردند .

    پس از این که دو مرورگر اصلی در بازار هر یک توانستند به نوعی از XMLHttp حمایت نمایند ، مرورگرهائی دیگر نظیر Opera و Safari نیز هر یک به نوعی حمایت خود از شی فوق را اعلام کردند .

    بدین ترتیب پیاده کنندگان صفحات وب توانستند ، صفحاتی را خلق نمایند که با تعبیه کدهای مورد نیاز در آنها ، امکان پردازش در سمت سرویس گیرنده را فراهم نمایند .

    انجام پردازش های اولیه نظیر تغییر رنگ و شکل ظاهری صفحات ، مدیریت عناصر موجود بر روی یک صفحه و تغییر آنها در زمان اجراء متناسب با عملیات کاربر ، بررسی صحت داده ورودی توسط کاربر در یک فرم ساده اطلاعاتی ، دریافت داده در پس زمینه و عدم نیاز به ارسال تمامی صفحه و بهنگام سازی بخش هائی خاص از آن ( با بکارگیری فریم ها ) ، نمونه هائی از تاثیر فناوری هائی بود که توان پردازش در سمت سرویس گیرنده را در اختیار پیاده کنندگان قرار می داد .

    وب پویا با تمرکز بر روی پردازش های سمت سرویس دهنده همزمان با گسترش اینترنت و وب ، ایجاد صفحات وب با محتویات پویا با اتکاء به منابع داده موجود در سمت سرویس دهنده و سایر شرایط تاثیر گذار در فرآیند پاسخ به درخواست کاربران مطرح گردید .

    همین موضوع باعث شد که توجه به سرویس دهنده برای انجام برخی پردازش ها نیز در دستور کار قرار بگیرد .

    ظهور فناورهائی نظیر ASP ( برگرفته شده از Active Server Page ) و PHP ( برگرفته شده از Hypertext Preprocessor ) از اوایل سال 1996 پاسخی به این نیاز بود .

    از آن زمان به بعد بود که کم کم واژه برنامه های وب قدم در عرصه نرم افزار گذاشت .

    اگر به تعاریف آن زمان برگردیم مشاهده می کنیم که در ابتدا از این اصطلاح در خصوص صفحات وب پویا استفاده می گردید .

    نگرش جزیره ای به فناورهای مرتبط با برنامه های وب تا اوایل سال 1999 ادامه یافت .

    تا این که شرکت های متعددی به فکر ارائه یک پلت فرم با در نظر گرفتن واقعیتی به نام اینترنت افتادند .

    دات نت ، پلت فرم ارائه شده توسط شرکت مایکروسافت یک نمونه در این زمینه است که از صدر تا ذیل آن با در نظر گرفتن واقعیتی با نام اینترنت طراحی و پیاده سازی شده است .

    در این دوران بود که به برنامه های وب با یک نگاه جامع تر و سیستماتیک تر نگاه می شد .

    در طی پنج سال گذشته ، این نوع برنامه ها توانستند با بکارگیری مجموعه ای از فناوری ها منشاء تحولات عمده ای در خصوص بردن اینترنت در متن زندگی (و نه حاشیه !

    ) مردم جهان باشند .

    ایده " نرم افزار به عنوان سرویس " و یا برنامه نویسی سرویس گراء از نگرش های جدید به مقوله نرم افزار و دنیای برنامه نویس‍ی در عرصه وب است .

    موج استفاده از اینترنت برای ارائه خدمات online ( ارائه شده به کاربران از طریق برنامه های وب ) باعث گردید تا معماری و رفتار اینگونه برنامه ها با تامل بیشتر مطالعه و بررسی گردد .

    هدف ، ایجاد برنامه های وب با کارآئی مطلوب است تا ضمن ارائه خدمات خود دارای ویژگی هائی نظیر : افزایش تعامل کاربر با برنامه ( همانند برنامه های desktop ) ، استفاده بهینه از محیط انتقال و به حداقل رساندن ترافیک آن ، مدیریت بهینه منابع سمت سرویس گیرنده در پاسخ به رویدادهای محقق شده سمت سرویس گیرنده ، عدم ارسال اطلاعات غیره ضروری توسط سرویس گیرنده و ...

    باشند .

    ماحصل این تفکرات ظهور فناوری جدیدی با نام Ajax است که شرکت هائی نظیر گوگل و مایکروسافت توانستند از سال 2005 با بکارگیری این فناوری تحول بزرگی را در عرصه برخی از سرویس ها و خدمات خود ایجاد نمایند .

    حمع بندی !

    همزمان با بحث معماری سرویس گیرنده و سرویس دهنده دو واژه fat-client و thin-client قدم در ادبیات نرم افزار گذاشتند .

    در معماری فوق ، هدف استفاده از توان پردازشی سرویس گیرنده و سرویس دهنده برای اجرای یک برنامه است .

    استفاده از توان پردازشی هر یک از عناصر اصلی درگیر در معماری فوق و تعریف سهمی خاص برای هر یک ( سرویس گیرنده و سرویس دهنده ) ، از اهداف اولیه و در عین حال بسیار مهم معماری فوق است .

    پیاده کنندگان برنامه های کامپیوتری خصوصا" برنامه های وب ، همواره با این سوال مواجه بوده و هستند که در تقسیم سهم پردازش ، چه میزان سهم را می بایست به سرویس گیرنده داد ؟

    چه پردازش هائی را می توان در سمت سرویس گیرنده انجام داد ؟

    در پاسخ به این سوال رویکردهای مختلفی مطرح شده است .

    fat client و thin client دو نمونه متداول در این زمینه می باشند .

    در fat client ، هدف بکارگیری پتانسیل های مرورگر برای انجام اکثر پردازش ها در یک برنامه وب است .

    رویکرد فوق در اواسط دهه 90 میلادی در کانون توجه طراحان و پیاده کنندگان وب قرار گرفت .

    علت این امر به تلاش شرکت های بزرگ نرم افزاری در جهت تولید و ارائه فناورهائی بود که توانمندی مرورگر در انجام پردازش را افزایش می داد .

    ظهور فناورهائی نظیر جاوا اسکریپت ، ایجاد یک اینترفیس برنامه نویسی در مرورگر ،‌ایجاد یک مدل شی گراء ( ولو ناقص ) برای یک سند HTML با هدف امکان دستیابی به هر یک از عناصر موجود در آن ، عرضه DHTML و CSS جملگی نشاندهنده تلاش هائی است که در آن زمان با هدف افزایش توان پردازش در سمت سرویس گیرنده مطرح شد .

    پس از گذشت مدت زمان کوتاهی ( از ابتدای سال 1996 ) ، تمایل به سمت برنامه های وب با ویژگی thin client مطرح گردید .

    در مدل فوق ، هدف کاهش سهم پردازش در سمت سرویس گیرنده و افزایش پردازش های سمت سرویس دهنده بود .

    ظهور فناورهای متعددی نظیر ASP و PHP تنها نمونه ای اندک از تلاش های انجام یافته در آن دوران برای افزایش توان پردازش در سمت سرویس دهنده است .

    با این که در سالیان گذشته همچنان از پتانسیل های سمت سرویس گیرنده برای انجام پردازش در برنامه های وب استفاده می گردید ، ولی رفتار اکثر برنامه های وب مبتنی بر این واقعیت بود که : " داده را وارد نمائید ، صفحه را برای سرویس دهنده ارسال نمائید و منتظر دریافت پاسخ باشید " .

    هم اینک ما شاهد یک تحول بزرگ دیگر در عرصه برنامه نویسی هستیم .

    تحولی که مهمترین دستاورد آن ، تولد نسل جدیدی از برنامه های وب است که در آنها کاربر با برنامه دارای تعامل بمراتب بیشتری نسبت به نسل گذشته برنامه های وب است .

    این تحول عظیم نرم افزاری به کمک مجموعه ای از فن آوری ها که در مجموع به آنها Ajax گفته می شود ، محقق می گردد .

    آیا Ajax قصد دارد با تغییر در الگوی رفتاری برنامه های وب فاصله آنها را با برنامه های desktop کاهش دهد ؟

    آیا زمان آن رسیده است که برای پردازش های سمت سرویس گیرنده از یک پلت فرم جامع ، همانند پلت فرم های ارائه شده سمت سرویس دهنده ، استفاده گردد ؟

    آیا تاکنون از این فناوری به منظور ایجاد برنامه های وب استفاده شده است ؟

    با استفاده از چه مکانیزم هائی می توان مبادله اطلاعات بین سرویس گیرنده و سرویس دهنده را کاهش و از پهنای باند موجود استفاده بهینه کرد ؟

    اجازه دهید به این سوال و سوالات بسیار دیگر در رابطه با Ajax ، فناورهای مرتبط با آن و از همه مهمتر کاربرد آن در بخش های بعدی پاسخ دهیم .

    : تحولی بزرگ در عرصه وب ( بخش دوم ) در بخش اول ضمن بررسی تاثیر متقابل وب بر نرم افزار ، مروری داشتیم به وب ایستا و وب پویا و این که برای انجام پردازش های مورد نیاز در برنامه های وب می توان از امکانات و فناوری های متعددی در سمت سرویس گیرنده و سرویس دهنده استفاده کرد .

    هدف از بیان مطالب فوق ، پاسخ به این سوال بود که چرا به وجود یک فناوری دیگر نظیر Ajax نیاز است ( گرچه Ajax یک فناوری نیست و مجموعه ای از فناوری ها را شامل می شود ) .

    با این که ایده فناورهائی نظیر Ajax در گذشته نیز وجود داشته است و پیاده کنندگان برنامه های وب در زمان خود با بکارگیری برخی فناوری ها و ترفندها توانسته بودند مشکل خود را تا حدود زیادی برطرف نمایند ولی گذشت زمان و گسترش باور نکردنی اینترنت ، باعث شد تا استفاده از بستر فوق برای ارائه سرویس های online در دستور کار اکثر سازمان ها و شرکت ها در اقصی نقاط جهان قرار بگیرید .

    همین موضوع باعث شد که دگر باره جامعه بزرگ طراحان و پیاده کنندگان برنامه های وب این نیاز را احساس کنند که به یک راه حل جامع و سیستماتیک برای برخورد با مسائل خود ( خصوصا" تعامل با کاربر ) در دنیای نوین برنامه نویسی وب نیاز دارند .

    دنیائی که در آن دقت و سرعت در ارائه خدمات online با بکارگیری کمترین منابع و تولید بیشترین بهره وری ، رمز ماندگاری یک سازمان در مدار رقابت و پیشرفت است .

    همین امر باعث شد که شرکت های بزرگ تولید کننده نرم افزار و خدمات online نیز دست به کار شوند و چیزی را خلق کنند که ما امروزه از آن با نام Ajax یاد می کنیم .

    در این بخش به بررسی موارد زیر خواهیم پرداخت : تولد Ajax و ریشه یابی علت انتخاب این نام و فناوری های مرتبط با آن اصول حاکم بر فناوری Ajax .

    نحوه کارکرد Ajax در برنامه های وب تولد Ajax در فوریه سال 2005 ، Jesse James Garrett از Adaptive Path مقاله ای را با عنوان " یک رویکرد جدید به برنامه های وب " بر روی وب سایت خود منشتر کرد .

    وی در این مقاله ضمن اشاره به این موضوع که فاصله بین برنامه های وب و desktop در حال از بین رفتن است ، به بررسی دو نمونه از برنامه های وب جدید با نام Google Suggest و Google Maps پرداخته بود .

    Garrett پس از تشریح نحوه عملکرد برنامه های فوق ، برای اولین مرتبه از واژه در مقاله خود استفاده کرد .

    وی در مقاله خود دنیائی را پیش بینی کرده بود که در آن برنامه های وب از لحاظ قابلیت دستیابی ، پاسخ گوئی و سادگی قابل مقایسه با برنامه های desktop خواهند شد .

    چیست ؟

    برگرفته شده از Asynchronous JavaScript XML است و مشتمل بر مجموعه ای از فناوری ها است ، نه صرفا" یک فناوری .

    ، اساس و پایه چیزی است که امروزه از آن با نام وب 2 نام برده می شود ( نسل جدید وب ) .

    ایده اصلی ، ایجاد برنامه های وبی است که دارای شکل ظاهری و توانمندی هائی مشابه با برنامه های desktop باشند .

    چی‍زی بیشتر از یک نگرش جدید به برنامه های وب نیست .

    نگرشی که در آن صرفا" یک حجم اندک از اطلاعات بین سرویس گیرنده و سرویس دهنده با هدف افزایش تعامل کاربر با برنامه ، مبادله می گردد .

    ، مشتمل بر مجموعه ای از فن آوری ها است که هر یک دارای جایگاه مختص به خود می باشند : - فن آوری های استاندارد presentation نظیر XHTML و CSS - بهنگام سازی پویای یک صفحه مستقر شده در حافظه با استفاده از DOM ( برگرفته شده از Document Object Model ) - مبادله و پردازش داده با استفاده از XML (فرمت مبادله داده ) و XSLT ‌( تبدیل XML به XHTML ) - بازیابی داده غیرهمزمان با استفاده از XMLHttpRequest ( کارگزار اولیه مبادله اطلاعات ) و جاوا اسکریپت که همه چیز را به یکدیگر مرتبط می نماید و از آن برای برنامه نویسی Ajax engine استفاده می گردد .

    در دنیای واقعی ، از تمامی فناوری های فوق در Ajax استفاده می گردد ولی به وجود HTML/XHTML ، DOM و Javascript بیش از همه نیاز است چون : از XHTML برای نمایش اطلاعات استفاده می گردد .

    از DOM برای تغییر بخش هائی از یک صفحه XHTML بدون نیاز به load مجدد صفحه استفاده می گردد.

    از جاوا اسکریپت ، برای مقداردهی اولیه ارتباط بین سرویس گیرنده و سرویس دهنده و بهنگام سازی صفحات وب به کمک DOM استفاده می گردد .

    یک عنصر اساسی و مهم دیگر که در مقاله Garrett به آن اشاره نشده است ، ضرورت انجام پردازش های سمت سرویس دهنده است .

    تمامی فناوری های اشاره شده ( در پاراگراف قبل ) ، در ارتباط مستقیم با Ajax engine سمت سرویس گیرنده می باشند .

    بدون وجود یک سرویس دهنده مطمئن و پاسخگو به منظور ارسال محتویات برای Ajax engine ، در عمل Ajax فاقد کارآئی لازم خواهد بود .

    صرفنظر از فناوری استفاده شده در سمت سرویس دهنده ( نظیر PHP و یا ASP.NET ) ، می بایست این اطمینان حاصل گردد که داده با فرمت صحیح برای Ajax engine ارسال می گردد .

    از شی XMLHttpRequest درون جاوا اسکریپت برای ارتباط با سرویس دهنده استفاده می گردد تا در ادامه بتوان داده برگردانده شده از سرویس دهنده ( با فرمت Xml و یا متن معمولی ) را پردازش کرد .

    از DHTML و CSS برای نمایش نتایج در مرورگر استفاده می گردد .

    هدف از کنارهم قرار گرفتن تمامی فناوری های اشاره شده ، این است که شکل ظاهری برنامه های وب و نحوه پاسخ گوئی آنها به خواسته کاربران مشابه برنامه های desktop گردد .

    همانگونه که در نام این فناوری مشخص است ، Ajax مشتمل بر مجموعه ای از فناوری ها است : Asynchronous JavaScript XML غیرهمزمان و یا asynchronous بدین معنی است که مرورگر لازم نیست منتظر بماند تا داده از سرویس دهنده برگردانده شود و می تواند به محض دریافت داده آن را پردازش نماید .

    به عبارت دیگر ، انتقال داده در پس زمینه انجام شده و مرورگر مجبور به توقف و انتظار برای تحقق اتفاقی نخواهد بود .

    رویکرد فوق نشاندهنده یکی از ویژگی های مهم و حیاتی Ajax است .

    در چنین مواردی‌، می توان داده را پس از ارسال توسط سرویس دهنده ، پردازش کرد .

    لازم نیست تمامی برنامه را معطل رسیدن داده از سمت سرویس دهنده کرد .

    در صورتی که لازم است پردازش های سمت سرویس گیرنده منتظر دریافت داده بمانند ، مکانیرم دریافت و پردازش داده می بایست بطور همزمان انجام شود .

    در صورتی که یک ارتباط ضعیف بین سرویس گیرنده و سرویس دهنده برقرار شده باشد این موضوع می تواند عملکرد و موفقیت یک برنامه وب را با مشکل مواجه نماید .

    بخش جاوا اسکریپت واژه Ajax نیز بسیار مهم است چراکه بالفعل شدن پتانسیل های Ajax در مرورگر توسط آن محقق می گردد .

    به کمک جاوا اسکریپت با سرویس دهنده ارتباط خود را برقرار می نماید و در ادامه نیز داده برگردانده شده از سرویس دهنده را پردازش می نماید .

    بخش xml واژه Ajax دارای چه مسئولیتی است ؟

    XML به عنوان یک استاندارد جهانی در عرصه وب مطرح است و به کمک آن می توان از یک روش مبتنی بر متن برای مبادله داده در عرصه اینترنت استفاده کرد .

    یکی از دلایل مهم گسترش xml ، ماهیت مبتنی بر متن آن است .

    با توجه به این که طراحی اینترنت بگونه ای انجام شده بود تا بتواند مستندات مبتنی بر متن نظیر اسناد HTML را نمایش دهد ، وجود xml به منزله قلابی است که می توان آن را دور اینترنت انداخت و به صید داده پرداخت.

    داده ئی که به همراه ساختار خود می تواند امکان پردازش را در سایر سیستم ها فراهم نماید .

    به همین دلیل است که برنامه های Ajax بگونه ای نوشته می گردند تا بتوانند بر روی داده برگردانده شده از سرویس دهنده با فرمت xml ، عملیات مورد نظر را انجام دهند .

    به عبارت دیگر ، پس از برقراری ارتباط با سرویس دهنده ، داده با فرمت xml برگردانده خواهد شد .

    xml ، صرفا" یکی از روش های برگرداندن داده است و در صورت لزوم می توان از فرمت هائی دیگر نظیر متن معمولی نیز استفاده کرد .

    در کنار جاوا اسکریپت و XML ، فناوری Ajax با فناوری های دیگری نظیر: DHTML و CSS نیز کار می کند .

    به کمک فناورهای فوق می توان داده موجود در یک صفحه وب را بدون نیاز به load تمامی صفحه بهنگام کرد ( صرفا" load بخشی که ضرورت آن احساس می شود ) .

    پتانسیل فوق یکی از اهداف و ویژگی های مهم برنامه های وب مبتنی بر فناوری Ajax محسوب می گردد بخشی از جاوا اسکریپت که امکان Ajax را میسر می سازد ، شی XMLHttpRequest است .

    شی فوق تقریبا" در تمامی مرورگرهای مدرن و پیشرفته از قبل تعبیه شده است .

    به کمک این شی امکان اتصال به سرویس دهنده و مدیریت داده برگردانده شده از آن در پس زمینه فراهم می گردد .

    اقتدار Ajax نه تنها وابسته به جاوا اسکریپت بلکه مدیون شی XMLHttpRequest است .

    اصول Ajax هنوز در ابتدای راه است و بسیاری از پیاده کنندگان با این پرسش مواجه هستند که از این فناوری در چه زمانی و در چه نوع برنامه هائی می توان استفاده کرد .

    عدم شناخت مناسب از این فناوری باعث می شود تا از آن در برنامه هائی استفاده گردد که نه تنها قابلیت و یا ویژگی جدیدی را به برنامه اضافه نمی نماید بلکه در بسیاری از موارد عدم موفقیت یک برنامه و نارضایتی کاربران آن را به دنبال خواهد داشت .

    زمانی می توان این ادعا را داشت که یک برنامه وب مبتنی بر Ajax در اهداف خود موفق بوده است که در آن اصول زیر رعایت شده باشد .

    به حداقل رساندن ترافیک : برنامه های Ajax می بایست حتی المقدور حجم اندکی از اطلاعات را برای سرویس دهنده ارسال و یا از آن دریافت نمایند .

    به عبارت دیگر ، با بکارگیری Ajax می بایست حجم ترافیک بین سرویس گیرنده و سرویس دهنده کاهش یابد .

    عدم سردرگمی کاربر : برنامه های وب مبتنی بر فناوری Ajax مدل تعامل با کاربر مختلفی را نسبت به برنامه های وب سنتی معرفی کرده اند .

    در مقابل وب استاندارد ( کلیک کن و منتظر باش ) ، برخی برنامه های Ajax از یک رویکرد دیگر برای پیاده سازی بخش رابط کاربر خود نظیر drag-and-drop و یا double-clicking استفاده می نمایند .

    صرفنظر از نوع مدل انتخاب شده برای پیاه سازی تعامل با کاربر ، مهم ارائه امکانات بخش رابط کاربر بگونه ای است که همواره کاربر در سریع ترین زمان بتواند در خصوص انجام حرکت بعدی خود تصمیم گیری نماید .

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

    استفاده از تجارب برنامه های وب سنتی و desktop می تواند پیاده کنندگان را در طراحی یک مدل مناسب جهت تعامل با کاربر کمک نماید .

مخالفت مدرس با مساله جمهوریت اذهان بسیاری را به این سوال واداشته که به‌راستی علت مخالفت او با مساله‌ای به این مهمی که باعث ایجاد تحولی بزرگ در کشور می‌شد چه بود؟ قیامی را که مدرس علیه جمهوری رضاخانی ایجاد و رهبری کرد، به یکی از نقطه‌های عطف تاریخ مبدل شد و در زمره مبارزات این قهرمان عرصه دیانت و سیاست، جایگاه ویژه‌ای احراز نمود. گرچه برخی بر این باورند که مبارزه با جمهوری‌خواهی ...

فصل اول مقدمه تئاتر مدرن ، معنی گسترده ای است که وقوع آن دست کم زمانی نزدیک به یک قرن را در خود نهفته دارد . مدرن بودن در تئاتر صور مختلفی را در بر می گیرد و هر روشنفکری که در امر تئاتر تجربه ای را به انجام رسانده ، وجهه نظر خاصی را ارائه کرده است که در نوع خود تاثیر گذار بوده است ...گاهی در نزد آنان همه چیز در قدرت بازیگران شکل می گرفت ، زمانی سخن و دیالوگ تئاتری سلطه داشت ، ...

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

اهداء و تقدیر تقدیم به روح پرفتوح امام شهداء ، رهبر کبیر انقلاب اسلامی ، امام خمینی (ره) ، ارواح مطهر شهدای عزیز که از همه چیز خود به خاطر تامین آسایش و عزت و افتخار ما گذشتند و به خاطر زحماتشان هم اکنون آسوده ایم و می توانیم به راحتی به تحقیقمان بپردازیم .تقدیم به آنهایی که برای سلامت بشر زحمت می کشند تا انسانها طعم شیرین زندگی را بچشند . سپاسگذاری : بدینوسیله از دبیر محترم ...

چکیده تحقیق: در این تحقیق سعی شده که به یکی از راههای افزایش درآمد کشور که پیمان صنعت گردشگری می باشد پرداخته شود این مسأله مورد تحقی و بررسی قرار گیرد. همچنین سعی شده به گونه ای راههایی مناسب در جهت جذب گردشگر و مشکلات و موانعی که بر سر راه آن وجود دارد مورد بررسی قرار گیرد و با ارائه راهکارهای مناسب قدمی در جهت رفع موانع موجود برداریم. اما این را نیز باید بدانیم که اینگونه ...

مشارکت فناوری اطلاعات در کارآفرینی چکیده در این مقاله به بررسی مشارکت فناوری اطلاعات در کارآفرینی و ایجاد فرصت‌های شغلی پرداخته شده است. در حقیقت فناوری اطلاعات به عنوان موتور محرکی در نظر گرفته شده است که ضمن به حرکت درآوردن چرخ‌های شغلی و استخدامی، سبب رشد و پویایی اقتصاد جامعه و ایجاد نوع جدیدی از اقتصاد می‌شود که اقتصاد دانش محور نامیده می‌شود. هدف از نگارش این مقاله مروری ...

چکیده در این مقاله به بررسی مشارکت فناوری اطلاعات در کارآفرینی و ایجاد فرصت های شغلی پرداخته شده است. در حقیقت فناوری اطلاعات به عنوان موتور محرکی در نظر گرفته شده است که ضمن به حرکت درآوردن چرخ های شغلی و استخدامی، سبب رشد و پویایی اقتصاد جامعه و ایجاد نوع جدیدی از اقتصاد می شود که اقتصاد دانش محور نامیده می شود. هدف از نگارش این مقاله مروری بر وضعیت فعلی در بازار کار فناوری ...

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

بررسی روابط اجتماعی اکثر محصولات صنعتی تولید شده یا در حال تولید و یا در دست بررسی و طراحی، بخاطر و برای انسان و در رابطه تنگاتنگ با انسان عصر حاضر و آینده است. بررسی روابط اجتماعی انسان در رابطه با آن تولید و یا طرح از مراحل مهم تحقیقات در یک پروژه است. آگاهی کافی در این مرحله به طراح کمک می‌کند تا به اطلاعات مناسب و با شناخت و بینش دست به طراحی آن محصول بزند. یک طراح صنعتی پیش ...

کامپیوتر و اصول ابتدائی آن هنگامی پایه گذاری شد که خوارزمی ریاضیدان بزرگ ایرانی، برای سهولت در انجام محاسبات، الگوریتم را بوجود آورد. با پیشرفت علم و فنآوری ماشین حساب، ابرکامپیوترها ونسل بعدی کامپیوترهای شخصی(PC ) ساخته شد و سپس با ورود کامپیوترهای پیشرفته ومدل های مختلف آن تحولی شگرف در صنعت و تکنولوژی بوجود آمد. پیشرفت روز افزون علم کامپیوتر و توسعه سریع آن،جوامع بشر را مجذوب ...

ثبت سفارش
تعداد
عنوان محصول