تهيه شده در شرکت سخا روش -  1381
E-Mail : Info@Srco.ir

                                       

  
    شروع   

  مقدمه  
  از کجا می بايست شروع کرد؟  

  مفاهيم برنامه نويسی  

  پياده سازی نرم افزار  
  نيازها و انتظارات  
  چالش های موجود 
  انواع معماری توليد نرم افزار  
  نمونه برنامه های سرويس دهنده / سرويس گيرند ه
  چالش های برنامه های توزيع شده  
  مدل پياده سازی نرم افزار بر اساس نوع خدمات  
  انواع مدل های فيزيکی پياده سازی C/S
  جمع بندی  

 مقدمه ای بر وب  

   اينترنت و وب  
  مفاهيم و تعاريف اوليه  
  جايگاه HTML  
  انواع صفحات وب  
  وضعيت فعلی وب و صفحات وب  

 تعاريف برنامه نويسی تحت وب  

  تعاريف  
  ارائه يک مدل همگراء و جامع  


 لايه رابط کاربر

  مفاهيم اوليه  
  جايگاه مرورگرها  
  روند تکامل و شکل گيری مرورگرها  
  معرفی تکنولوژی های مرتبط در لايه  
     Plug -In 
    Cookie   
    API  
    JavaScript 
    VBScript  
   JAVA  
   DOM  
   CSS  
   DHTML  
   XML  
   XSL  
   DTD  
   Schema  
   XML-DOM  
   Xpath 
  

   جمع بندی  

 لايه ارتباطی  

  مفاهيم  
  پروتکل TCP/IP
  پروتکل HTTP
 پروتکل S-HTTP
 
جمع بندی

 لايه ميانی  

  مفاهيم  
  معرفی تکنولوژی های مرتبط در لايه  
     CGI  
     SSI  
     PHP  
     ASP  
     JSP  
     ColdFusion  
     جمع بندی      

 لايه داده  

  مفاهيم اوليه  
  چاش های دستيابی به داده در وب  
  دستيابی همگن به داده ها  
  معرفی تکنولوژی های مرتبط  
  جمع بندی  

 جمع بندی و راهکارها  

  معرفی دات نت  
  معرفی J2EE
 
روند توسعه نرم افزار های وب در آينده

 منابع  

  معرفی منابع  

  مقدمه ای بر وب   
  انواع صفحات وب

 

 

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

¨ صفحات وب ايستا ،‌  امروزه بر روی اينترنت و وب ، با سايت های متعددی که شامل ‌ تعداد بيشماری از صفحات وب ايستا می باشند ، برخورد مي نمائيم. واژه " ايستا " ، در رابطه با يك صفحه وب دارای  چه  تعريفی است ؟ اين نوع صفحات ، صفحاتی هستند كه شامل كدهای Html بوده و در يك محيط اديتور تايپ و با انشعاب Htm و يا Html ذخيره مي گردد. مولف صفحه وب قبل از اينكه هر نوع درخواستي برای آن وجود داشته باشد ، بطور كامل محتوی صفحه را مشخص كرده است . محتويات اين نوع از صفحات ( متن ،‌تصوير ، لينك ها و … ) و شكل ظاهری آنها همواره يكسان خواهد بود ، صرفنظر از اينكه چه كسی ، در چه زمانی و يا چگونه صفحه را مشاهده خواهد كرد. بنابراين می توان گفت ، محتويات اين قبيل از صفحات قبل از اينكه درخواستی ايجاد گردد ، توسط مديريت سايت ايجاد و مشخص شده اند.

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

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

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 استفاده كرد.

 << بخش بعدی