شنبه ۱۴ تیر ۹۹ ۲۱:۱۳ ۴۳۳ بازديد
طریق فعالیت برنامههای کلاسیک اینترنت چیزی مشابه این میباشد: اکثر تعاملات استفاده کننده با رابط کاربری سبب ارسال یک درخواست به سرور میگردد. سرور پردازشهای لازم را انجام داده و بعد یک برگه HTML به کلاینت بازمیگرداند. این دسته بر طبق انگیزه اصلی اینترنت، یعنی بازی نقش یک رسانه برای ابرمتن میباشد. ولی آنچه اینترنت را برای ابرمتنها مطلوب می نماید، الزاماً آن را برای برنامههای قابل انعطافافزاری نیز مطلوب نخواهد کرد[۲]. گزینه اینجاست که برنامههای اینترنت برای کاربرد (Application) بودن پباده سازی نشدهاند و این منجر شده است که در بخش اعظمی موردها استفاده کننده را نادیده بگیرند.
فرض نمایید استفاده کننده میخواهد در یک دکان الکترونیک، ویژگی ها محصول بعدی را ببیند، یا این که یک محصول را به سبد خرید خویش بیفزاید. اتفاقی که میفتد این میباشد که برای انجام هر یک از این امور، زیرا نیاز میباشد با سرور رابطه برقرار شود، بایستی یک درخواست به سرور ارسال گردیده، سرور پردازشهای لازم را انجام دهد و آن گاه یک برگه تحت عنوان فیض بازگرداند. استفاده کننده هم دراین در بین می تواند با انگشتانش بازی نماید!
گرچه ما به صفحه ها اینترنت، با همین مراحل انجام کارها عادت کردهایم، البته حقیقتاً نحوه کلاسیک برنامههای اینترنت، گرچه از دید تکنیکی مزایای بخش اعظمی دارا هستند، البته ایرادات عمدهای هم داراهستند. یکی عمدهترین ایرادات صفحه های اینترنت را میقدرت همروند عمل کردن آنان دانست. (یعنی همین که زمانی درخواستی از سرور داریم، برگه اینترنت مقابلمان مسدود گردیده و بایستی درانتظار بمانیم تا سرور کارش به اتمام برسد و کاغذای تحت عنوان جواب برگرداند).
ایجکس چه چیزی است
ایجکس یک تکنولوژی وجود ندارد؛ طراحی سایت در مشهد بلکه گروهایست از تکنولوژیهایی که هرکدام در جای خویش تکنولوژی بی نقص و موفقی میباشند، و فعلا به صورت جدیدی در کنار هم قرار گرفته و ایجکس را تشکیل دادهاند [۲]. تکنولوژیهایی که در ایجکس از آنان استعمال می شود عبارتاند از:
اکران استاندارد با استعمال از XHTML و CSS.
اکران پویایی و تعاملات با به کارگیری از Document Object Model (DOM).
تبادل و بازنویسی داده با به کار گیری از XML و XSLT.
بازیابی دادهها به طور غیر همروند با به کار گیری از XMLHttpRequest. و جاوااسکریپت برای سرهمبندی تمامی چیز با هم.
در واقع ایجکس ترکیبی از تکنولوژیهای فوق میباشد و هیچ چیز جدیدی ارائه نمیدهد. کلیه شگفتی ایجکس در معماری میباشد که برای تولید یک برنامه اینترنت، با به کار گیری از این تکنولوژیها ارائه می دهد.
ای جکس یک نحوه جهت پباده سازی و بسط اینترنتگاهها بوده که جهت بالا بردن اقتدار تعامل Interface تارنما با استفاده کننده و بالا بردن کیفیت تلاش و امکانهای تارنما گزینه استعمال قرار میگیرد. Ajax به طور Client Side و با به کار گیری JavaScript و CSS گزینه به کار گیری قرار میگیرد. امروزه در مبحث پباده سازی صفحه های HTML تکنولوژی Ajax استدلال حیات ورقه و ارضاء استفاده کننده در مواجهه با واسط (Interface) تلقی میشود [۳].
ایجکس؛ معماری جدیدی برای اینترنت
به عبارتیطور که اشاره شد، شیوه فعالیت برنامههای کلاسیک اینترنت چیزی مشابه این میباشد: اکثر تعاملات استفاده کننده با رابط کاربری سبب ساز ارسال یک درخواست به سرور میگردد. سرور پردازشهای لازم را انجام داده و آنگاه یک ورقه HTML به کلاینت بازمیگرداند. این دسته مبنی بر انگیزه اصلی اینترنت، یعنی اجرای نقش یک رسانه برای ابرمتن میباشد. البته آنچه اینترنت را برای ابرمتنها مطلوب میکند، الزاماً آن را برای برنامههای قابل انعطافافزاری نیز مطلوب نخواهد کرد. قبلا به معایب طرز کلاسیک و متداول اشاره کردیم. در حال حاضر ببینیم Ajax چه پیشنهادی ارائه می دهد. نصیبهای مهم معماری پیشنهادی ایجکس بدین قرارند: رخدادهای کوچک سمت سرور: اجزای داخل یک برنامه اینترنت میتوانند، درخواستهای کوچکی برای سرور ارسال نمایند، داده ها گزینه نیازشان را از سرور اخذ نمایند، و هر بخش از کاغذ را که لازم میباشد مبنی بر DOM بهروز نمایند، فارغ از اینکه تمام کاغذ مجدد بار گذاری و رسم شود.
غیر همروند بودن: درخواستهایی که به سرور ارسال میشود، منجر بسته شدن ورقهٔ داخل مرورگر کلاینت نمیشوند. استفاده کننده می تواند به عمل با نصیبهای دیگر برنامه ادامه دهد و زمانی که پاسخی از سرور گرفته شد، با بهروز کردن رابط استفاده کننده، به استفاده کننده اطلاع داده میگردد.
عکسالعمل برای هر رخدادی: نسبتاًً می توانیم برای تمام رخدادهایی که استفاده کننده به وجود می آورد، با سرور رابطه برقرار کنیم. مرورگرهای امروزی اکثر رخدادهایی را که سیستمبرهان اذن می دهد اخذ می نمایند: کلیک کردن ماوس، جنبش موشواره روی شیء، زدن یک کلید و غیره. هر رخدادی میتواند منجر ارسال یک درخواست به طور غیر همروند برای سرور شود.
بجای اینکه مرورگر ابتدا رابطه فقط یک ورقه HTML را بار گذاری نماید، یک موتور ایجکس را نیز همدم با برگه لود مینماید، که به لهجه جاوااسکریپت درج شده و معمولاً مابین قابهایی در برگه نهفته شده است. این موتور برهان بهروز کردن رابط کاربریای که استفاده کننده میبیند، و همینطور برقراری رابطه با سرور در پشت پرده میباشد. موتور Ajax قابلیت و امکان تعامل استفاده کننده با برنامه را، جدا از ارتباطات و نقل و انتقالات دربین برنامه و سرور میدهد؛ براین اساس، استفاده کننده دیگر شاهد یک برگه خالی و ساعت شنی و انتظار برای انجام عملیات سمت سرور نخواهد بود.
آن مدل از کارهای استفاده کننده که سبب یک درخواست HTTP میشدند، اینک با به کار گیری از جاوااسکریپت موتور ایجکس را فراخوانی مینمایند. راجعبه جواب به آن مدل از عملهای استفاده کننده که نیاز به ارسال درخواست به سرور ندارند (مانند اعتبار سنجیهای بی آلایش دادهها، دستکاری دادههای باطن یاد سیستم کلاینت، و حتی هدایت استفاده کننده به بخشهای گوناگون برنامه در برخی موردها) موتور ایجکس خویش وارد فعالیت میشود. در شرایطی که موتور ایجکس برای جواب گویی نیاز به چیزی از سمت سرور داشته باشد، (به عنوان مثالً اطلاعاتی را از خزانه اطلاعاتی بخواهد، کدهای جدیدی برای رابط استفاده کننده لازم داشته باشد و…) به طور غیر همروند و معمولاً در قالب XML یک درخواست به سرور ارسال مینماید. ارسال این درخواست هیچ وقفهای در عمل استفاده کننده با برنامه ساخت نخواهد کرد [۲]. به عبارتیطور که تا قبل از این گفته شد، ایجکس گروهای از تعدادی تکنولوژی میباشد. موتور Ajax از این تکنولوژیها برای انجام وظایف مختلفی که بعهده دارااست به کارگیری میکند.
توضیحاتی راجب Bootstrap
بوتاسترپ مجموعهای برای ساخت ظاهری وب سایتها و برنامههای اینترنت است. یکی از محبوبترین فریم ورکهای css میباشد که از شیوه گرید بندی برای چیدمان صفحات وب استفاده میکند.بوتاسترپ شامل تمپلتهای طراحی اچتیامال و سیاساس محور برای typography، فرمها، دکمهها، نمودارها، اجزاء راهبری و دیگر اجزاء رابط کاربری و الحاقات اختیاری (JavaScript Extensions)، میباشد. بوتاسترپ محبوبترین پروژه در GitHub است که توسط NASA و MSNBC و دیگر سایتهای مطرح استفاده شده است. با استفاده از اطلاعات رابط برنامهنویسی (API) در بوت استرپ میتوان اجزاء واسط پیشرفته مانند scrollspy و تکمیل کننده خودکار کلمات (typeahead) را بدون نیاز به نوشتن حتی یک خط کد جاوا اسکریپت ایجاد نمود. بهترین نکته بوت استرپ این است که متن باز بوده و به صورت رایگان قابل دانلود و استفاده میباشد. (ویکی)
از مزایای بوت استرپ:
آموزش بوت استرپ