اینترنت و مهمترین سرویس آن وب علاوه بر این که حیات بشری را در هزاره سوم دستخوش تحولات فراوانی کرده است ، توانسته است منشاء تحولات گسترده ای در سایر حوزه های فناوری گردد . در واقع ، تحول در زندگی بشریت مدیون پیشرفت در سایر حوزه های فناوری است . یکی از این حوزه ها ، صنعت نرم افزار است .
برای آشنائی با این تحول بد نیست مروری سریع داشته باشیم به گذشته وب و نرم افزار تا از این رهگذر بتوانیم ضرورت ایجاد فناورهای جدیدی نظیر 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 ) .