پروژه رشته کامپیوتر درباره اینترنت و وب – قسمت دوم

مراحل آماده سازی صفحات وب ایستا

1 – یك مو.لف ،  صفحه ای را كه شامل كدهای Html است را ایجاد و آن را با انشعاب Htm و یا Html بر روی سرویس دهنده وب ذخیره می نماید.

2 – کاربری از طریق برنامه مرورگر خود ، در خواست استفاده از یك صفحه را می نماید، درخواست فوق از مرورگر برای سرویس دهنده ارسال می گردد.

3 – سرویس دهنده وب ، فایل درخواستی با انشعاب Htm  و یا  Html را  پیدا خواهد كرد.

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

4 – سرویس دهنده وب  ، كدهای Html فایل مزبور را از طریق شبكه برای مرورگر ارسال میدارد.

5 – مرورگر كدهای Html را پردازش و صفحه فوق را نمایش خواهد داد.

  محدودیت های صفحات وب ایستا

  فرض كنید می خواهیم یك صفحه وب را بگونه ای طراحی نمائیم ، كه بمحض ورود هر كاربر زمان جاری سیستم بهراه یك پیام مناسب نمایش داده شود.. در این زمینه با چندین محدودیت مواجه خواهیم بود كه  بكمك تگ های Html قادر به  برطرف كردن آنها نخواهیم بود.  ما میدانیم كه یك كاربر در یك زمان خاص به ملاقات صفحه خواهد آمد ولی قطعا؛ زمان آن را نمی دانیم .اگر بخواهیم زمان را بصورت كد در صفحه Html خود داشته باشیم ، نتیجه همواره یكسان بوده و همیشه یك زمان ثابت و یكسان برای تمامی ملاقات كنندگان صفحه ، نمایش داده خواهد شد. تگ های Html  امكاناتی بمنظور ایجاد  صفحات وب سفارشی  و بر اساس شرایط خاص  در اختیار قرار نمی دهد. صفحات وب ایستا همواره بصورت مشابه و یکسان برای تمامی کاربران نمایش داده خواهند شد.    ( نظیر رستورانی كه همواره و صرفنظر از ذائقه مشتریان خود ، یك غذای ثابت و از قبل آماده شده را برای همه آماده و در اختیار قرار می دهد!)  Html دارای هیچگونه امنیتی نیز نبوده و كدهای آن را همه می توانند مشاهده و حتی تكثیر گردد. شاید تنها مزیت این نوع از صفحات طراحی آسان و بکارگیری سریع آنان در یك شبكه باشد.این نوع صفحات دارای امكانات لازم بمنظور آفرینش صفحات پویا  نیستند،  چون  نمی توان  كدهای مورد نظر خود  را بعد از درخواست یك صفحه به آن اضافه کرد . می بایست بدنبال روشی و یا روش هائی بود که بکمک آنها بتوان صفحات وب پویا را ایجاد کرد. بمنظور نیل به هدف فوق از دو روش عمده استفاده می گردد:

§                       Client – side dynamic page . بهره گیری از تكنولوژیهائی كه پویائی یك صفحه را از جایگاه سرویس گیرنده تحقق خواهند داد.

§                     Server – side dynamic page . بهره گیری از تكنولوژیهائی كه پویائی یك صفحه را از جایگاه سرویس دهنده تحقق نمایند.

  قبل از پرداختن به هر یك از موارد فوق، لازم  است در ابتدا با مفهوم و جایگاه یك سرویس دهنده وب بیشتر آشنا شویم . یك سرویس دهنده وب ، نرم افزاری است كه مدیریت صفحات وب را برعهده گرفته و آنها را برای سرویس گیرندگان مجهز به مرورگرها، قابل دستیابی و استفاده می نماید. تاكنون سرویس دهنده های وب متعددی طراحی و به بازار عرضه شده است . Apache ، IIS  … نمونه هائی از این نوع نرم افزارها هستند. IIS محصول شرکت مایکروسافت بوده و می توان در زمان نصب ویندوز ( 2000 و یا XP) آن را نیز نصب نمود.نسخه 5 بهمراه ویندوز 2000 و نسخه 5.1 بهمراه XP   ارائه شده است . بهرحال جایگاه یك سرویس دهنده وب در ارائه امكانات و زیرساخت های مناسب برای طراحی صفحات وب پویا و بالطبع سایت های پویا یك امر برجسته است. همانگونه كه اشاره گردید، برای خلق صفحات وب پویا از دو رویكرد متفاوت استفاده می گردد. استفاده همزمان از دو روش فوق هیچگونه تعارضی با هم نداشته بلكه بالعكس توانائی یك صفحه وب پویا را افزایش خواهد داد. در ادامه به بررسی دو رویكرد فوق خواهیم پرداخت .

 Client-side dynamic page .  در مدل فوق ماژول هائی ( Plug –in ) كه به مرورگر ملحق شده اند، تمامی عملیات لازم جهت ایجاد صفحات پویا را انجام خواهند داد. كدهای Html از طریق  فایل مربوطه كه شامل مجموعه ای از دستورالعمل ها است برای مرورگر ارسال خواهد شد.مرورگرها دستورات فوق را جهت تولید كدهای Html و در زمان درخواست یك صفحه توسط  كاربر ، استفاده خواهند كرد. بنابراین محتویات یك صفحه بر اساس درخواست كاربران و بصورت پویا ایجاد خواهد شد.

 مشاهده تصویر با ابعاد بزرگتر

  مراحل آماده شدن یك صفحه وب پویا با تاكید بر روش های Client-Side

1 – یك مولف صفحه وب مجموعه ای از دستورالعمل را برای ایجاد كدهای Html نوشته و آنها را در فایلی با انشعاب Html ذخیره می نماید.

2 – كاربران  درخواست یك صفحه را از طریق مرورگر خود برای سرویس دهنده وب ارسال خواهند كرد.

3 – سرویس دهنده فایل درخواستی ( در صورت نیاز فایل دیگری كه شامل دستورالعمل ها باشد) را پیدا خواهد كرد.

4 – سرویس دهنده وب فایل حاوی كدهای Html و در صورت وجود دستورالعمل های مربوطه را برای متقاضی ارسال خواهد كرد.

5 – یك ماژول همراه مرورگر ، دستورالعمل ها را پردازش و كدهای Html را در همان صفحه Html برمی گرداند.

6 – در نهایت كدهای Html توسط مرورگر نمایش داده می شوند.

 تاكنون تكنولوژیهای متعددی بر اساس رویكرد فوق مطرح و در اختیار طراحان و مولفان صفحات وب پویا قرار گرفته شده است . جاوا اسكریپت ، Vbscript ، كنترل های ActiveX و اپلت های جاوا نمونه هائی از این نوع تكنولوژی ها بوده كه برای شناخت خوانندگان در این بخش بصورت خیلی مختصر در ارتباط با هر یك توضیحاتی ارائه خواهد شد.

جاوااسكریپت (JavaScript) ،‌اولین زبان اسكریپت در ارتباط با مرورگرها است . زبانهای اسكریپت بعنوان حد میانه بین كدهای Html و زبانهای معمولی برنامه نویسی قرار داشته و بصورت مفسر عمل می نمایند. جاوااسكریپت را نباید با زبان برنامه نویسی جاوا اشتباه گرفت . شركت نت اسكیپ در ابتدا زبان اسكریپتی با نام LiveScript پیاده سازی  و بهمراه  مرورگر NetScape 2.0 در اختیار علاقه مندان قرار گرفت . زمانیكه شركت نت اسكیپ با شركت Sun  متحد گردید ، نام آن را جاوااسكریپت گذاشتند. بخشی از گرامر زبان فوق نظیر ساختار اولیه ، از جاوا گرفته شده است ( خود جاوا نیز اغلب ساختار خود را از زبان C گرفته است ) . جاوااسكریپت دارای امكانات متعدد و قدرتمندی جهت كنترل و مدیریت رفتار و محتویات یك مرورگر است . زبان فوق توانائی انجام عملیاتی نظیر : عملیات روی فایل ها  را دارا نمی باشد .( شاید یكی از دلایل مسائل امنیتی باشد ) . فراگیری جاوااسكریپت نسبت به جاوا بمراتب راحت تر است . جاوا اسكریپت بگونه ای طراحی شده است كه قادر به خلق برنامه های كوچك و در عین حال موثر جهت انجام عملیات متعددی نظیر برخورد با رویدادهای بوجود آمده در سطح كاربر نظیر : كلیك نمودن بر روی یك آیتم ، بستن یك پنجره ، فعال شدن یك صفحه ، خارج شدن از یك صفحه ، حركت موس روی یك آیتم و… است .  ماكروسافت نسخه اختصاصی خود از جاوااسكریپت را با نام Jscript و همزمان با معرفی مرورگر IE 3.0 در اختیار علاقه مندان قرار داد.

Vbscript . شركت ماكروسافت همزمان با عرضه مرورگر IE 3.0 زبان اسكریپت اختصاصی خود یعنی Vbscript را مطرح نمود. زبان اسكریپت فوق بر اساس زبان برنامه نویسی ویژوال بیسیك و با هدف رقابت با جاوااسكریپت در اختیار علاقه مندان قرار گرفت . شاید از معدود امتیازات این زبان نسبت به جاواسكریپت بتوان به عدم حساسیت آن در ارتباط با حروف بزرگ و كوچك (Case Sensitive) نام برد. كدهای نوشته شده توسط زبان فوق صرفا؛ از طریق مرورگر شركت ماكروسافت (IE) قابل تفسیر و اجرا بوده و نت اسكیپ این زبان را حمایت نمی كند ، گرچه با افزودن برخی Plug-In امكان استفاده از این زبان در مرورگر نت اسكیپ نیز فراهم خواهد شد.  استفاده از زبان جاوااسكریپت بمراتب نسبت به زبان Vbscript رایج تر است . اگر قصد انتخاب یك زبان اسكریپت برای پردازش های متكی بر سرویس گیرنده را داشته باشیم ، بدون شك جاوااسكریپت یك گزینه مناسب خواهد بود. جاواسكریپت  و Vbscript هر دو بعنوان یك ماژول با نام Script Engine كه بهمراه مرورگرها ارائه شده است ، مسئولیت تفسیر و اجرای دستورالعمل های مربوطه را بر عهده خواهند گرفت .  در پروژه دات نت شركت ماكروسافت VB.NET را جایگزین Vbscript نموده است.

كنترل های ActiveX ، یك كنترل اكتیوایكس عنصری است كه توسط یكی از زبانهای برنامه نویسی نظیر C++ و یا جاوا پیاده سازی می گردند. در زمانیكه این نوع اكتیوایكس ها را بهمراه صفحات خود استفاده نمائیم ،  امكان انجام بخشی از عملیات متكی بر سرویس گیرنده نظیر ایجاد یك Bar Chart ، Timer ، تایید كاربر و یا دستیابی به بانك اطلاعاتی فراهم می گردد.كنترل های اكتیوایكس از طریق تگ <Object> به صفحات وب اضافه خواهند گردید. منادی تكنولوژی فوق شركت ماكروسافت بوده و تا نسخه شش مرورگر نت اسكیپ امكان استفاده از آنها توسط مرورگر فوق وجود ندارد.البته با نصب برخی Plug-in زمینه استفاده از كنترل های اكتیوایكس در مرورگر نت اسكیپ بگونه ای فراهم شده است .نكته جالب توجه در ارتباط با تكنولوژی فوق این است  كه امكان انجام عملیات متفاوت  بر روی كامپیوترهای كاربران نظیر كار با فایل ها و ریجستری ویندوز بوجود می آید و این خود می تواند از لحاظ امنیتی مشكل و گاها ” با توجه به وجود فایروال ها تحقق نا پذیر باشد. بهرحال نمی توان بر روی تكنولوژی فوق بعنوان یك راه حل جامع و فراگیر برای خلق صفحات وب پویا استفاده كرد مگر اینكه مخاطبان سایت خود را صرفا” از بین كسانی انتخاب نمائیم  كه ویندوز را بعنوان سیستم عامل  و مرورگر IE را بعنوان مرورگر خود برگزیده اند.

Java Applet ، جاوا یك زبان برنامه نویسی مستقل از Platform است . جاوا نسبت به زبانهای اسكریپت دارای قابلیت های بمراتب بیشتری است . هدف ،  استفاده از كدهای جاوا به شكل اپلت است . عناصر فوق بسادگی و توسط تگ <Applet> به صفحات وب ملحق خواهند شد. خوشبختانه مرورگرهای ماكروسافت و نت اسكیپ هر دو از طریق ایجاد یك ماشین مجازی جاوا (JVM)  از اپلت های جاوا حمایت می كنند. بمنظور استفاده از اپلت های جاوا در یك صفحه وب از چندین روش  می توان استفاده كرد : استفاده از تگ استاندارد <Object>  یا استفاده از تگ غیراستاندارد <Applet> .  تگ های فوق به مرورگر خواهند گفت كه یك فایل جاوا را از طریق سرویس دهنده وب DownLoad و سپس بكمك ماشین مجازی جاوا (JVM) ،‌ موجود در مرورگرها ،‌آن را اجراء نماید. همانطور كه حدس زده اید یكی از مسائل موجود در ارتباط با استفاده از اپلت ها جاوا ، زمان اضافه ای است كه صرف Download كردن ، می گردد. بنابراین در زمان استفاده از اپلت های جاوا ، سعی در نوشتن اپلت ها با كد كم باشیم . از رایج ترین موارد كاربرد اپلت های جاوا می توان به ایجاد Drop-Down Menu و انیمیشن های متفاوت اشاره كرد.

Server Side Dynamic Pages .  در این مدل كدهای Html بهمراه مجموعه ای از دستورالعمل ها برای سرویس دهنده ارسال و مجددا”  از دستورالعمل های فوق برای تولید كدهای Html برای صفحه ای كه كاربر درخواست كرده ، استفاده شده و در نهایت صفحه بصورت پویا بر اساس درخواست كاربر ایجاد خواهد شد.

 مشاهده تصویر با ابعاد بزرگتر

مراحل آماده شدن یك صفحه وب پویا با تاكید بر روش های Server-Side

1 – یك مولف صفحه وب ، مجموعه ای از دستورالعمل ها را برای ایجاد كدهای Html نوشته و دستورالعمل ها را در یك فایل ذخیره می كند.

2 – كاربران  از طریق مرورگر خود ، درخواست یك صفحه وب را نموده و این درخواست برای سرویس دهنده وب ارسال خواهد شد.

3 – سرویس دهنده وب محل فایل حاوی دستورالعمل را پیدا خواهد كرد.

4 – سرویس دهنده وب دستورات موجود در فایل را بمنظور تولید كد  Html اجراء خواهد كرد.

5 – سرویس دهنده وب كدهای تولید شده جدید را از طریق شبكه برای مرورگر ارسال می نماید.

6 – مرورگر كدهای Html را پردازش و در نهایت صفحه وب نمایش داده خواهد شد.

یكته مهم در سناریوی فوق ،‌ اجرای تمامی پردازش ها بر روی سرویس دهنده،  قبل از ارسال صفحه برای مرورگر است . یكی از مزایای عمده مدل فوق نسبت به مدل Client-Side ، این مورد است كه : در یك صفحه وب صرفا” شاهد كدهای Html خواهیم بود. این بدان معنی است كه منطق صفحات وب در نزد سرویس دهنده وب مخفی نگهداری خواهد شد و می توان این اطمینان را داشت كه اكثر مرورگرها قادر به نمایش نتایج پردازش ها ی اجراء شده بر روی سرویس دهنده باشند. ASP.NET از مدل فوق تبعیت می كند. یكی دیگر از نكات  مهم در ارتباط با مدل فوق، این است كه  یك صفحه تا زمانیكه درخواستی برای آن دریافت نشده باشد ، محتویات آن بوجود نخواهد آمد. در ادامه به بررسی برخی تكنولوژیهای متداول  دراین مدل خواهیم پرداخت .

 CGI(Common Gateway Interface) . مكانیزمی برای ایجاد اسكریپت بر روی سرویس دهنده بوده تا بدین طریق امكان ایجاد برنامه ها ی متكی بر وب فراهم گردد. CGI ماژولی است كه می بایست به سرویس دهنده وب اضافه گردد. قدمت استفاده از تكنولوژی فوق بمراتب بیشتر از ASP است و تا كنون تعداد بیشماری از صفحات وب پویا با استفاده از تكنولوژی فوق و  بكمك یك زبان اسكریپت ایجاد شده اند. CGI این امكان را فراهم خواهد كرد كه كاربر،  یك برنامه دیگر ( نظیر یك اسكریپت Perl ) را بر روی سرویس دهنده برای ایجاد صفحات وب پویا استفاده نماید. استفاده از زبانهائی نظیر Perl  , C   ,C++  بهمراه  تكنولوژی فوق بسیار رایج است . بهرحال تكنولوژی فوق امروزه در خیلی از سایت های بزرگ خصوصا” سایت های متكی بر یونیكیس رایج بوده و قابلیت اجراء بر روی چندین Platform را دارا می باشند.

ASP(Active Server Page) ،‌ تكنولوژب فوق كه پس از عرضه ASP.NET با نام ASP كلاسیك نامیده می شود، یكب از متدوالترین روش هاب موجود و استفاده شده براب ایجاد صفحات وب پویا است . تكنولوژب فوق با بهره گیری از توان زبانهای اسكریپت نظیر جاوااسكریپت و Vbscript توانسته است پاسخب شایسته به طراحب صفحات وب پویا را ارائه نماید. ASP یك ماژول جداگانه است كه در كنار سرویس دهنده وب قرار می گیرد( ASP.dll ) . تكنولوژب فوق نسبت به برخب از تكنولوژیهاب همگروه از كارآئب پایین ترب برخوردار بوده و در زمینه استفاده از زبانهاب اسكریپت در كنار خود ، نیز داراب محدودیت جدب است . بهرحال تكنولوژب فوق با  سابقه شش ساله تاكنون توانسته است به خیل عظیم درخواست ها براب ایجاد صفحات پویا درست پاسخ دهد ، ولب با ظهور خواسته ها و انتظارات  جدید به چالش جدب كشیده شده است و شاید ظهور و تولد ASP.NET دلیلب و پاسخی به برخب از انتقادات مطروحه در این زمینه باشد.

JSP (JavaServer page ) ، تكنولوژی فوق امكان تركیب Html ویا Xml را با كدهای جاوا فراهم می نماید. این فناوری برخلاف ASP كه صرفا” توسط سرویس دهنده وب ماكروسافت ( IIS) حمایت می گردد ،‌ توسط سرویس دهندگان متعددی حمایت شده است . JSP در مقایسه با ASP بمراتب دارای قدرت و سرعت بیشتری بوده و برنامه نویسان جاوا بخوبی با قابلیت های متعدد آن آشنائی دارند. JSP این امكان را فراهم می كند كه برنامه های جاوا از ویژگی محیط های متكی بر Java2 نظیر JavaBeans و Java2  Libraries بخوبی استفاده نمایند.

ColdFusion . با استفاده از تكنولوژی فوق ،  امكان ساخت صفحات وب پویا فراهم می گردد.این تكنولوژی  بصورت یك ماژول جداگانه است كه می بایست بر روی سرویس دهنده وب نصب گردد. صفحاتی كه توسط تكنولوژی فوق بوجود می آیند، توسط هر نوع مرورگری قابل خواندن و نمایش خواهند بود. تكنولوژی فوق از مجموعه زیادی تگ كه توسط نرم افزار  ColdFusion ارائه شده است ،‌ استفاده می كند. نرم افزار  فوق  بر روی سرویس دهندگان متعددی حتی IIS نصب و قابل استفاده است . مهمترین مسئله در ارتباط با تكنولوژی فوق در این است كه از تگ های Html-Like  استفاده می گردد ( در ASP.NET از زبانهای برنامه نویسی و اشیاء استفاده می گردد). یكی دیگر از نكات مهم در ارتباط با تكنولوژی فوق در این است كه تهیه آن رایگان نبوده و می بایست بیش از هزار دلار برای تهیه آن هزینه نمود!

PHP ، تكنولوژی فوق كه در ابتدا Personal Home Page  نامیده می شد و اخیرا؛ PHP Hypertext Preprocessor نامیده می شود ، یكی دیگر از تكنولوژیهای رایج برای ایجاد صفحات وب پویا است . تكنولوژی فوق بر خلاف ASP.NET . بصورت Cross-Platform بوده و بر روی اغلب سیستم ها نظیر ویندوز NT و اغلب نسخه های یونیكس قابل استفاده است . گرامر زبان فوق نظیر C و Perl  است.تكنولوژی فوق دارای برخی از ویژگی های برنامه نویسی شی گراء بوده كه امكان سازماندهی و كپسوله نمودن كدها را فراهم می آورد.

ASP.NET ، پس از معرفی تكنولوژیهای رایج در این  گروه ،  زمینه مناسب برای آشنائی با تكنولوژی ASP.NET بوجود آمده است . ASP.NET نیز بعنوان یك ماژول بر روی سرویس دهنده قرار می گیرد ( aspnetIsapi.dll) . در كنار تكنولوژی فوق مجموعه عظیم دات نت قرار دارد  . ASP كلاسیك درارتباط با استفاده از زبانهای اسكریپت محدود بوده و صرفا؛ به جاوااسكریپت و Vbscript  ختم می گردد ( Vbscript هم صرفا” توسط سیستم های متكی بر ویندوز قابل استفاده خواهد بود ) .ASP.NET امكان استفاده از مجموعه وسیعی از زبانهای برنامه نویسی را فراهم می كند. زبانهائی نظیر VB.NET ، C# ، Jscript.NET ، Perl Python, نمونه هائی از زبانهائی می باشند كه می توان از آنها بهمراه ASP.NET استفاده كرد.

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

لینک متن کامل با فرمت ورد

Leave a comment