1. مهمان گرامی، جهت ارسال پست، دانلود و سایر امکانات ویژه کاربران عضو، ثبت نام کنید.
    بستن اطلاعیه

Asp.Net & JSP

شروع موضوع توسط hector2141 ‏15/9/12 در انجمن .Net

  1. کاربر ارشد

    تاریخ عضویت:
    ‏6/9/12
    ارسال ها:
    14,323
    تشکر شده:
    2,698
    امتیاز دستاورد:
    0
    حرفه:
    daneshjo
    [​IMG]
    دراين مقاله نگاهي به شروع و سرگذشت صفحات فعال سرور در دو سال اخير داريم و اينكه چگونه برنامه نويسان را به خود جذب كرده. البته مشكلاتي دارد ولي طراحان .NET راه حل هايي براي تعداد زيادي از مشكلات برنامه- نويسي يافته اند.


    [h=1]مقدمه[/h] با به وجود آمدن ASP.NET ما شاهد تغيير در روش هاي متعارف اسكريپت نويسي بسوي شروع برنامه نويسي حرفه اي بر خط (online) هستيم.
    اسكريپتهاي VBتنها انتخاب نيستند زيرا برنامه نويسان ميتوانند از تمام امكانات موجود در.NET مانندVB وC++ وتمام زبانهاي موجود در آن استفاده كنند.
    نميتوان انكار نمود كه.NET مورد توجه بسيار توسعه دهندگان نرم افزار قرار گرفته است و اين نشانه قالب مناسب و استراتژي .NET براي تداوم در دنياي برنامه نويسي ميباشد. معرفي راه حل نرم افزاريي كه هركس را قادر ميسازد با هر زبان دلخواه كه با محيط .NET سازگاري داشته باشد برنامه نويسي كند حداقل كاري است كه ميتوان در مورد آن انجام داد.
    همچنين به منظور فراهم سازي اطلاعاتي براي كاربر كه شما ميخواهيد آنها را ارائه نماييد ،تحولاتي در زمينه كاركرد ASP با سرور و كلاينت انجام گرفته است.
    هر چند كه نسخه فعلي نسخه پايدار بتا ميباشد و بسياري از مردم تصور ميكنند كه آنچه كه ارائه ميشود پايدار ميباشد ولي به دليل طبيعت بتاي آن داراي مشكلاتي ميباشد. يادگيري با مشكلات موجود در چهار چوب امكان آمادگي در برابر نسخه جديد را فراهم ميكند.
    يادگيري از تاريخچه ASP
    براي دانستن تاريخچهASP ميتوان به سال 1995 و در محيطي خاص كه ماكروسافت دريافت كه به علت عدم پشتيباني انترنت در محصولات خود از اين صنعت باز مانده باز گشت. قبل از آن ماكرسافت در پي بدست آوري فن آوري و ابزار و پرتكلهاي اختصاصي خود براي شبكه هاي ماكرسافت بود. اما ناگهان به استراتژي انترنت احتياج پيدا كردند.
    ماكرسافت توانست خود را از شرايط عقب مانده به شرايط ايده آلي برساند با توليد مرورگر وب IE(internet explorer) بازارمرورگر وب را بدست آورد وIIS (internet information server) را در 1000 شركت مهم نصب نمود.
    پيدايش ASP
    بازگشت به اواسط دهه 90 ابتداي دنياي وب نشان ميدهد در آن زمان براي توليد وب كسي كه ميخواست وب سايت خود را محيطي مناسب براي تجارت قرار دهد ابزارهاي زيادي براي انتخاب نداشت و انتخابها محدود بودند به محيطهاي برنامه نويسي سمت سرور و ابزار برنامه نويسي سمت كاربران محدود ميشد. در انتها برنامه نويس بايد برنامه هاي رابط دروازه عمومي CGI(common gateway interface) را بكار برد. در اين برنامه ها از زبانهاي كامپايلي نظير دلفي ويژوال بيسيك يا زبانهاي اسكريپت نويسي تفسيرشدني مانند پرل يا ركسو اسكريپتهاي لايه سيستم عامل مانند UNIX استفاده مي گردد.
    ابتداي 1996 ماكرسافت شروع به اصلاح وضعيت موجودكرد براي رسيدن به اهداف خود رابط برنامه نويسي كاربردي سرورانترنتISAPI(InternetServerApplicationProgrammingInterface) را به عنوان بخشي از سرور اطلاعات انترنت در نظر گرفت.ISAPI حاصل توسعه Win32API ويندوز ميباشد. اين فن آوري براي توليد نرم افزار سرور وب توليد شده بود. كه بتواند با IIS ارتباط داشته باشد.كه باعث پنج برابر شدن كارايي سيستم بود. همان گونه كه شما با اين توضيحات تصور ميكنيد اين افزايش كارايي اثرات جانبي دارد بر روي پيچيدگي برنامه نويسي براي برنامه نويسان ميشود.
    اين به علت ضعف برنامه نويسان نبود بلكه احتياج به دانش پايه اي ودقيق برنامه نويسي داشت تا برنامه هاي ISAPI درست كار كنند. شركت ماكرسافت همانگونه برنامه نويسان را به استفاده ISAPI تشويق ميكرد آنها را به استفاده از فن آوري اتصال دهنده پايگاه داده انترنت Internet Database Connector (IDC) تشويق ميكرد. اين فن آوري روشي جديد براي ايجاد ارتباط سايتهاي انترنتي با پايگاهاي داده سرور به واسطه ارتباط پذيري باز با پايگاه داده (ODBC)Open Database Connectivity ميباشد.
    فن آوري هاي IDC و ISPI از خامي ماكروسافت كاسته و براي اولين بار باعث تبديل سرور وب ضعيف به محيط سرور برنامه هاي محاوره اي ابتدايي شد.
    برنامه نويسان ديگر ابزارهاي ديگري در اختيار داشتند بسياري از آنها از جمله Netscape Livewire از محبوبيت زيادي برخوردار بودند.Livewire فن آوري قابل اجرا تحت سرور Netscape بود كه از فن آوري جاوا اسكريپت كه در آن از اجزا جاوا نيز استفاده شده بود براي منطق در صفحه استفاده ميكرد .محدوديتهاي ISAPI در Livewire نيز به علت كامالي بودن وجود داشت و براي اجاد تغيير نياز به قطع كردن برنامه و شروع مجدد بود.
    چرا ASP مورد نياز بود؟
    تمامي برنامه نويسان وب ، توانايي برنامه نويسي لازم براي نوشتن نرم افزارها ISAPI را نداشتند و چون در SAPI به كامپايل برنامه ها نياز بود. مراحل زيادي در توليد سايت مبتني بر ISAPI وجود داشت كه سبب كند شدن مراحل توليد سايت ميشد. برنامه نويسان تازه كار دريافتند كه يادگيري زباني صنعتي و قدرتمند مانند C++ ، كامپايل حتي ساده ترين منطق صفحه خود به فايلهاي .dll نياز دارد.
    برنامه هاي ويژوال بيسيك علي رغم سهولت توليدشان ، در صورت بكارگيري براي CGI بسيار ضغيف عمل نموده و تمام منابع را در اختيار خواهند گرفت. زبانهاي ديگر از جمله پرل براي آغاز يك برنامه خط دستور جداگانه و به منظور تفسير اجراي اسكريپتهاي درخواست شده به سرور نياز دارند كه اين امرموجب افزايش زمان بارگذاري صفحه و كاهش كارايي سرور خواهد شد.
    CGI خود تمام منابع را در اختيار ميگيرد چون درخواست هر صفحه سرورهاي وب را وادار ميكند تا فرايندهاي جديد را متوقف نموده و از طريق اين فرايندها ارتباط را بر قرار نمايند. اين امر موجب اتلاف وقت و مصرف حافظه باارزش RAM ميگردد مشكل ديگري كه فراروي تيم برنامه نويسي در اواسط دهه 90 قرار داشت ، اين مسئله بود كه سايت در واقع تركيبي از زبان نشانه گذاري فرامتنيHypertext Markup Language (HTML) و منطق است. آنها به روشي براي ادغام كدهاي برنامه نويسان با HTML طرح صفحه طراح و طراحي بدون ايجاد آشفتگي در ساختار ديگري نياز داشتند. راه حل هاي متعددي براي رفع اين مشكل از سيستمهاي قابل اختصاصي گرفته تا عبارات شامل سمت سرور Server Side Include (SSI) وجود داشتند.درهريك ازاين راه حل ها بر سرور اعلام ميشود كه كد مبتني بر تگ هاي توضيحات ويژه HTML را اجرا نمايد.
    ايجاد قابليت محاوره اي كه بتواند از سوي پايگاه داده هدايت شود ، نيز مشكلي ديگر در بهينه سازي برنامه نويسي بود. تقاضا براي سايت هاي وب پيچيده آغاز شده بود و برنامه نويسان به منظور رفع اين تقاضا به روشي قابل مديريت نياز داشتند ولي ابزارهاي موجود تسهيلي در انجام اين كار ايجاد نميكردند .افرادي كه ميتوانستند به اين روش دست يابند ، خواهان پاداشي متناسب با سختي انجام كاري كه از آنها خواسته شده بودند.
    آنچه كه لازم بود ، راه حلي براي بقيه ما بود . اين راه حل مي بايست فن آوري ساده اي مبتني بر متن و داراي اسكريپتي همانند پرل باشد ، تا برنامه نويسان بتوانند صفحات خود را بدون نياز به كامپايل و با كمك ابزار ساده ويرايش متن مانند Notepad تغيير دهند .اين روش بايد در حين حفظ كارايي لازم ،به حداقل منابع نياز داشته باشد. بنابراين بايد آن را درون سرور همانند ISAPI
    ولي بدون پيچيدگي اجرا نمود ،تيمهاي طراحان و تنظيم كنندكان علاقمند بودند كه اين روش شامل امكانات و خصوصيات قالبها و SSl باشد تا راحتتر بتوان يكپارچه سازي آرايش صفحات را مديريت نمود. اين روش براي اينكه بتواند با استقبال مواجه شود ،مي بايست زباني را اجرا نمايد كه براحتي بتوان آن را آموخت و براي بسياري از برنامه نويسان آشنا باشد.
    چرا از ابتدا ASP بكار گرفته نشد؟
    ASP موفقيتي ناگهاني نبود ،با اين حال توانست ،بخش عظيمي از جامعه توليدكنندگان نرم افزار را به خود جذب كند. بويژه افرادي كه قبلأ تجربه هاي خوبي در برنامه نويسي ويژوال بيسيك براي اسكريپتهاي كاربردي داشتند.
    افراد ديگري كه براي يادگيري ويژوال بيسيك سرمايه گذاري نكرده بودند، دريافتند كه محدوديتهايي در ويژوال بيسيك و اسكريپت نويسي ويژوال بيسيك وجود دارد كه مانع استفاده از اين فن آوري ميگردد. كمبودهاي موجود شامل مديريت ضعيف حافظه ،عدم قابليتهاي مديريت قدرتمند رشته مانند عبارات منظم است كه در ساير زبانهاي موجود وجود داشت .ASP در مقايسه با CGI پرل ، چنين كمبودي ندارد در آن زمان سرور اطلاعات در مراحل اوليه خود بسر ميبرد و توسعه آن به آرامي صورت ميگرفت، هر چند كه نيروي قدرتمند روابط عمومي مايكروسافت پس از پيشرفت شگفت آوري كه از سوي شركت گزارش شد ، كاملأ به جريان افتاده بود ، سرور اطلاعات در مقايسه با نسخه هاي موجود اين نرم افزار كاملأ ضعيف به نظر ميرسد ولي هنوز هم از لحاظ كارايي قابل رقابت است.
    تا سال 1997 ، بخش اعظم برنامه نويسي سرور در اختيار پرل و CGI بود. سايت هاي وب با كارايي بالا معمولأ از تركيبي از برنامه هاي كامپايل شده C براي موتورهاي تجاري واقعي و براي پردازش هاي سبكتر از فرم ها استفاده ميكردند. درآن زمان ترديدها و سوءظن هايي پيرامون اقدامات و فعاليت هاي انترنتي ماكروسافت از جمله IIS و Internet Explorer وجود داشت وISAPI بيش ازتشويق بخش وسيعي ازجامعه برنامه نويسان نرم افزار،كاربيشتري انجام نداد. علي رغم وجود چنين فضاي نامطمئني، ماكروسافت با خريد چندين مجوز Windows NT4 براي ميزباني وب و توسعه توليد نرم افزار روبرو شد.
    پشتيباني شركتهاي ثالث براي هر چيز ديگري به جز اجزا كوچك در ابتدا به كندي آغاز شد ولي همانند تمامي محصولات ماكروسافت كه پس از عرضه دو نسخه از محصول ، شركت همه مشكلات را برطرف ميسازد ، ASP نيز از اين قاعده مستثني نبود .
    در حالي كه بخش عمده اي از برنامه نويسان از جمله شخص برجسته اي چون Larry Wall از پرل استفاده ميكردند . برنامه نويسان ASP تا آن زمان تحت حمايت مناسبي قرار نداشتند .برنامه نويسان پرل از طرف مقام هاي بالا دعوت به مشاركت و باز گذاشتن كد هايشان ميشدند و به همين علت اين گروه ها با پيشرفت مواجه ميشدند ، به طوري كه تمامي راه هاي ممكن فقط با چند كليك در سايت شبكه آرشيو جامع پرل از لحاظ رقابتي و مالي منجر به ايجاد نظرياتي پيرامون وجود فروشندگان ثالث اجزا در دنيا نرم افزار هاي توزيع يافته انترنتي ويندوز (DNA) گرديد. البته اين موجب توسعه ASP به صورت برنامه مورد علاقه امروزي نگرديد ولي در موفقيت فعلي آن سهيم بوده است.
    نياز به مدل جديد ASP
    بديهي بود ماكروسافت به تغيير اصولي براي رساندن ASP به سطح ايده آل برنامه نويسي قدرتمند و صنعتي نياز داشت . صفحات فعال وب مبتني بر اصول COM است . فن آوري COM و ActiveX بخش مهمي از قدرت ASP را فراهم ميكنند ولي محدوديتهايي نيز براي آن خواهند داشت . ماكروسافت بايد تلاش زيادي در جهت بررسي COM و يافتن روشهاي بهبود آن انجام ميداد و اين تغييرات مي بايست بر روي ASP نيز تاثير بگذارند .در همان زمان ماكروسافت در يافت كه زمينه كاري برنامه نويسان تغيير يافته است و بر اساس استانداردهاي جديد كه هر لحظه عرضه ميشوند به ويژه در نرم افزارهاي توزيع يافته و اشتراك اطلاعات همچون (SOAP)Simple Object Access Protocol و XML_RPC، كه در آنها از XML استفاده گرديده تجديد ميشود .
    خدمات وب متداول شد ، جاوا در همه جا حضور داشت و XML محبوبيت زيادي در ميان برنامه نويسان پيدا كرده بود. نسخه جديدي از ASP براي رفع اين نيازها كفايت نميكرد . اگر تغييرات فقط به قصد شكست دادن حريفان نبود و ميتوانستند در مقابل سختيها مقاومت كنند ولي بايد فن آوري دور از دسترسي را در اختيار ميگرفتند.
    Windows DNA و ASP كه بر پايه فن آوريهاي Win32 API و COM ابتداي دهه 1990 بودند، نميتوانستند معماري فني و منطقي براي نرم افزارهاي توزيع يافته جديد فراهم نمايند در حالي كه شركت SUN با استفاده از (J2EE) Java 2 Enterprise Edition مجموعه اي از فن آوريهايي را در اختيار داشت كه برنامه نويسان ميتوانستند با دنبال نمودن آنها پروژه هاي كوچك
    را همراه با Standard Edition آغاز نموده و آن را براي Enterprise Java Beans كاملأتغيير اندازه دهند.
    در دنياي امروز ، تنها رقابت براي مرورگرهاي مختلف ديده نميشود ، بلكه رقابت در بخشهايي چون كانالهاي توزيع ، روشهاي اجرا در كامپيوترها و تلفنهاي موبايل ، تلوزيون ديجيتال محاوره اي ، لوازم خانگي هوشمند، منازلي مجهز به شبكه هاي ديجيتال و شايد براي تبديل صفحات وب به نرم افزارها وخدمات وب يكبار مصرف نيز وجود دارد. بدون ترديد ،در حالي كه ماكروسافت در حال بررسي پيرامون فن آوري هاي مخصوص خود ميباشد ، بايد رقابت را نيزمورد تجزيه تحليل قرار دهد . همان طور كه ماكروسافت چارچوب كاري .NET را عرضه نمود ، زبان جديدي را نيز براي قرن بيست و يكم به نام C# ارائه كرد و .NRT بر تمام انتقادات غلبه كرد و روشي كاملأ جديد براي برسي نرم افزارها و وب فراهم ساخت و براي هر چيز موجود شامل ويژوال بيسيك و ، يژوال C++ و صفحات فعال سرور جاي گزين قرار داده اند.
    پيش از ASP.NET نگاهي به تاريخچه مختصر و پر حادثه ASP خواهيم داشت:
    در دسامبر 1995 ، ماكروسافت با انجام تحولي كامل بيان نمود كه تمامي تيم توليدي محصولات خود را براي در برگرفتن انترنيت در ابزارهاي خود بكار خواهد گرفت .تا آن زمان آنها از بازار انترنت صرف نظر كرده بودند و در اين رقابت كاملأ عقب افتاده بودند.
    فوريه 1996 ، ماكروسافت سرور اطلاعاتي انترنت را براي بارگذاري رايگان عموم منتشر كرد.سخنگوي ماكروسافت ادعا كرد اين كه اين سرور 4 برار سرور Netscape Netsiteا كارايي دار و شامل IDC ISAPI نيز مي باشد.
    با گسترش Windows NT4 نسخه بعد IIS نيز همراه با آن گسترش يافت.
    اكتبر 1996 ، ماكروسافت نسخه بتاي IIS3 را را براي ارتقا IIS 2 در اختيار قرار داد تغيير اصلي در اين نسخه پشتيباني از صفحات فعال سرور بود كه اين پروژه را “Denali” ناميده بود. ماكروسافت ادعا كرد بر بازار Netscape 2.1 غلبه خواهد كرد.
    آگوست 1997 ، ماكروسافت ASP 2 را به همراه IIS 2 منتشر كرد . IIS در خود كنسول مديريت ماكروسافت(MMC) را براي مديريت ساده سرور داشت و سرور SMTP به عنوان برنامه همراه در نظر گرفته شده بود. SMTP قبلأ قسمتي از بسته Commercial محسوب ميشد. ÷÷ٍ وASP در اين مرحله بطور كامل با Microsoft Transaction Server يكپارچه شده و اين در واقع بمنزله برداشتن قدمي به سوي تهيه برنامه اي بود كه انتخابي معتبر براي راه اندازي شبكه هاي بزرگ محسوب ميشد.
    1998 تا 2000 ماكروسافت انتشار نسخه هاي بالاتر موتورهاي زبان اسكريپت نويسي (Language Scripting Engines) را آغاز نمود و بدون نياز به UPDATE كارايي ASP را بالا برد بطور مثال عبارات منظم را براي برنامه نويسان اسكريپتهاي VB افزود.
    با انتشار ويندوز 2000 همراه با IIS 5 نسخه ASP 3 عرضه شد ASP 3 امكان كنترل دوبار سمت سرور ،و پشتيباني بهتر از خطاها و استفاده از ADO 2.5و XML و مخفي سازي كد كامپايل شده را در اختيار قرار ميدهد . IIS 5 اين امكان را ميدهد كه پردازها را تحليل كند و از خرابي و از كار افتادن سيستم جلو گيري كند.
    جولاي سال 2000 .NET اطلاعيه عمومي خود را منتشر نمود و C# را نيز معرفي كرد كه نشان دهند انعطاف و پايداري بود.
    مروري بر پايه محيط ASP.NET
    ماكروسافت با ارائه ASP و زبانهاي قديميتر خود به صورت .NET در قرن بيست و يكم قدم مهمي برداشت. ASP.NET كه از VB.NET را براي كد نويسي در اختيار قرار ميدهد به برنامه حرفه اي و شي گرابراي توليد صفحات وب تبديل شده و به اين فن آوري كمك بسيار ميكند . ولي زبانهايي كه از گذشته به ارث رسيده اند نمي توانند به اندازه .NET كارايي داشته باشند بنابراين .NET زبان C# را ارائه كرده كه براي محيط .NET مناسب باشد.
    C# در .NET به عنوان زباني كاملأ جديد ارئه شده. C# در عين اينكه براي برنامه- نويسان C آشنا ميباشد ولي جديد است . C# به دليل داشتن خصايص RAS مورد علاقه برنامه نويسان VB نيز ميباشد. برخي ميگويند C# زباني ارئه شده از سوي ماكروسافت براي رقابت با Java شركت SUN ميباشد .
    اگر ماكروسافت توليد نرم افزار را بخوبي توليد نمايدو C# را با VS.NET عرضه كند آنگاه قطعاُC# به معيارهاي مورد نظر خواهد رسيد . C# در واقع زباني جديد با تمامي امكانات دلخواه شما مانند شي گرايي كامل ، مديريت خود كار حافطه و مرتب سازي محيط كار مي باشد .
    بعضي از نكات مهم در مورد ASP.NET عبارتند از:
    ASP.NET بخشي اصلي از حوزه ابتكاري Micrisoft.NET يا برنامه اي جديد براي توليد نرم افزار مي باشد.
    .NET در واقع يك طراحي كاربردي براي جايگزيني به جاي مدل DNA ويندوز و همچنين مجموعه اي از ، خدمات ، ابزارها ، نرم افزارها و سرورها بر پايه چهارچوب كاري .NET و زبان اجرايي مشترك مي باشد.
    ASP.NET به جاي كه جايگزين ASP 4 بشود يا نسخه ارتقا يافته تدريجي آن باشد خود باز نويسي كامل از ابتدا محسوب مي شود واز تمامي امكانات پيشرفته براي در دسترس قرار دادن .NET استفاده شده است.
    ASP.NET مي تواند از هر چيز كه توسط .NET ارائه مي شود از جمله پشتي باني از تعداد 20 يا بيشتر زبان .NET (از Perl.NET تا C# ) و مجموعه اي كامل كتابخانه هاي نرم افزاري چارچوب كاري .NET بهره ببرد .
    نرم افزارهاي وب نوشته شده در ASP.NET سريع ، كارآمد ، قابل مديريت ، مقايسه پذير و انعطاف پذير هستند علاوه بر تمامي موارد فوق درك وكدنويسي آنها نيز بسيار ساده مي باشد .
    تمامي اجزا و نرم افزارهاي وب كامپايل مي شوند . اشيا ,NET همگي به زبانهاي يكساني نوشته شده و همه آنها عملكرد يكساني دارند ، در نتيجه به دلايل اجرايي نيازي به ترك محيط ASP وجود ندارد.
    نياز كمتري به استفاده از ابزار خارجي مي باشد با نوشتن فقط چند خط كد ، مي توان ميان ASP.NET وXML را بر قرار كرد يا شرطي گذاشت كه ASP.NET به عنوان نوعي وب سرويس عمل كند ، يا از آن استفاده كند فايل ها را منتقل كند يا صفحه سايتي را از راه دور پاك كند يا تصويري روي آن قرار دهد.
    استفاده از انعطاف ASP.NET
    ماكروسافت با كمك چارچوب كاري .NET و ASP.NET نه تنها خود را به عنوان رقيبي در فن آوري هاي توليد وب مطرح نمود بلكه بسياري از منتقدان نيز بر اين عقيده بودند كه ماكروسافت توانسته سايرين را پشت سر بگذارد. ASP.NET براي انجام هر كاري كه بخواهيد از ساخت صفحات وب تا سايت هاي بزرگ تجارت الكترنيكي ، در نظر گرفته شده.
    ماكروسافت دقيق شد تا انعطاف و قدرت مورد نظر برنامه نويسان با داشتن خاصيت سادگي استفاده از آن رعايت شود.
    با استفاده از ASP.NET توانايي انتخاب زبانها را داريد. همه زبانهاي .NET از كتابخانه و امكانات يكسان استفاده ميكنند. قدرتهاي يكسان از جهت ارث بري و كار با اجزا COM دارند
    شما مي توانيد با اطلاعات و كد نويسي يكسان براي هر كار از توليد سايت انترنتي تا ايجاد سيستمهاي بزرگ استفاده كنيد.اختلاف ميان API ها براي برنامه نويسان هيچ مشكلي ايجاد نميكندو برنامه نويسان لازم نيست نگران تبديل متغيرها باشند.
    در ASP.NET تمامي استاندارهاي جديد و مهم مانند SOAP وXML به علاوه ADO.NET و كتابخانه هاي كلاس اصلي تركيب شده اند و پياده ساز آنها نسبت به ساير فن آوري ها ساده تر خواهد بود.
    يك برنامه نويس ASP.NET فقط به كامپيوتري كه داراي Notepad وقابليتFTP ميباشد براي نوشتن كد ASP احتياج دارد ولي با استفاده از كنترل دستور محيط .NET و قالبهاي متني بر XML برنامه هااين عمل ساده تر انجام مي پذيرد.ماكروسافت امكانات بسيار قدرتمند كلاس هاي كتابخانه،چون توابع قابل استفاده درشبكه براي عملكردبا پروتكل كنترل مخابره، پروتكل اينترنت (TCP/ P I Transmission Control Protocol/ Internet Protocol) و سيستم نام دومين (DNS) و خدمات وب وداده XML و تصوير كشيدن تصاوير گرافيكي را در چارچوب كاري .NET در نظر گرفته است.
    در گذشته ، منظور از محدوديت هاي اسكريپت نويسي ASP اجزا بود كه بنا به دلايل مربوط بعمل كرد و نه دلايل طراحي مورد نياز بودند. ASP.NET به عملكرد يكساني دسترسي داشته و از زبانهاي يكساني براي توليد اجزا استفاده ميكند در نتيجه اجزا را ميتوان انتخابي از لحاظ طراحي دانست.
    يك برنامه نويس ٍِASP.NET نسبت به تغييرات انجام گرفته در سيستم عامل زمينه وAPI محافظت ميشود و از آنجايي كه فن آوري .NET در رابطه با نحوه پياده سازي كدهاي شما ميباشند شما با استفاده از Common Type System نبايد نگران بكار گيري پياده سازي هاي مختلف يك رشته يا عدد صحيح در زبان مورد استفاده در جز ايجاد شده خود باشيد.
    نوشتن برنامه هاي كاربردهاي ASP.NET
    در نسخه هاي قبلي ASP، نصب و راه اندازي نرم افزار به برنامه ريزي دقيقي نياز داشت به خصوص در شرايطي كه سيستم بزرگ و پيچيده بود اين امر به علت وجود عوامل مختلفي چون نياز به انتقال ، نصب ، ثبت اجزا توليد شده لزوم متوقف ساختن و آغاز سرور وب و تضمين بابت اينكه اين نسخه درست را در اختيار داريد ديده ميشد. شما مجبور به پيكر بندي سرور وب از طريق كنسول مديريت ماكروسافت ADSI يا ابزار خط فرمان بوديد كه بعضي اوقات شما را وادار به متوقف ساختن و آغاز دوباره خدمات ميكرد .
    اما با استفاده از ASP.NET تمامي اين موارد ساده شده است . فايلهاي ASP ، اجزا و گزينه هاي پيكربندي همگي فايلهايي هستند كه شما آنها را با هم منتقل خواهيد كرد . نيازي به ثبت اجزا وجود
    نداشته و شما مي توانيد با استفاده از فايلهاي مبتني در قالب XML تغييرات پيكر بندي را مشخص نماييد.ASP.NET از طريق ايجاد قابليت ميزباني براي نسخه هاي مختلف يك جز بر روي يك سيستم وابستگي هاي نسخه هاي نرم افزاري را نيز ساده كرده است .
    تبديل كد به زبانهاي چندگانه
    ASP.NET ومحيط كاري .NET ارائه شده از سوي ماكروسافت شامل سه زبان اصلي : VB.NET,C# و Jscript.NET ميباشد . البته ساير توليد كنندگان زبانهاي بسيار بيشتري مانند Perl.NET و يك Cobol.NET نسخه از Python را نيز در اختيار دارند.
    Jscript به منظور تبديل به زباني كارآمد و داراي شي گرايي .NET مجبور به باز سازي شد . برنامه نويسان با تجربه Jscript نسبت به موارد افزوده شده احساس راحتي و رضايت ميكنند.
    VB.NET جايگزين Vbscript شده است و از لحاظ عملكرد شباهت زيادي به آن دارد بطوري كه يادگيري آن براي برنامه نويسان Vbscript مشكل نخواهد بود . اين زبان به همراه Jscript دستيابي كامل به هر آنچه كه .NET ميتواند ارائه كند (مانند شي گرايي كامل براي اولين بار ) را فراهم مينمايد.
    C# همانند J++ mark 2 توصيف شده . ولي در واقع C# بسيار فراتر از آن است . C# را در حقيقت بايد C++ اي دانست كه از ابتدا طراحي شده. مشكلات C++ كاملأ شناخته شده اند و در نتيجه نيازي به پرداختن به آن در اينجا نيست . تنها نكته اي كه بايد بدان اشاره نمود اين است كه در C++ ، شي گرايي آخرين راه حل انتخابي بوده است . در حالي كه در C# ، اين مسئله به عنوان پايه در نظر گرفته شده است .
    تمامي عملكردها و پشتيباني از محيط كاري .NET براي تمامي زبانهاي .NET فراهم گرديده و علاوه بر اين اشيايي كه در يك زبان نوشته ميشوندتحت هر زبان ديگري قابل استفاده و تولد بوده و به ارث ميرسند. اين قابليت مفهومي بسيار قدرتمند بوده و نظريه عدم وابستگي زبان را مطرح ميكند. اين قابليت از طريق فن آوري Common Language Runtime قابل دستيابي ميباشد . CLR كرد زبان .NET را در يافت كرده و آن را دريافت نموده و آن را به زبان واسطه اي (زبان واسط ماكروسافت MSIL ) تبديل مي كند ، پس اين زبان واسط به كد ي دودويي ويژه دستگاه مقصد كامپايل مي شود . ويژگي زبان واسطه يكي از سيستم هاي عامل و برنامه هاي غير پنجرهاي مانند Portable.NET و Mono در حوزه منبع باز و محصولات ارائه شده از Borland وCorel در راه هستند.
    مقايسه ASP.NET و مدلهاي قبلي ASP
    اولين تفاوتي كه يك برنامه نويس با تجربه ASPميفهمد اين است كه پشتيباني از VBscript به نفع VB.NETكم شده است. البته اين مسئله بر خلاف ظاهر آن مشكل ايجاد نميكند چون كد آنها بسيار به يكديگر شباهت دارند و VB.NET زباني كاملأ قدرتمنداست بطوريكه محيطي بسيار كامل تر ار VBscriptدارد.
    همان طور كه در بالا اشاره شد ، تمامي زبانهاي ASP.NET شي گرا بوده و در سرور كامپايل ميشوند اين امر فوايد بسياري از جمله در بخشهايي كه به بهبودهاي بيشتري نياز است مانند كارايي ماندگاري و قابليت مديريت به همراه داشته است.
    با استفاده از ASP قديمي شما بايد تمامي برنامه خود را از ابتدا كد نويسي كنيدASP.NET داراي قابليت هاي زيادي در صرفه جويي نيروي كار به منظور آساني انجام كار ميباشد. فرم هاي وب با نگاهي جديد به فرم ها در در صفحات وب عرضه شده اند كه در واقع شيوه جديد VB Raid Development ميباشد.
    برنامه نويسان با استفاده از فرم هاي وب از اجزا جديد فرم بهره ميبرند كه شما ميتوانيد آنها را به طريق مرسوم يا از طريق كد بيافزائيد . اين اجزا به برنامه نويس قابليت برنامه نويسي رويداد گرا را در سمت سرورميدهند. شما ميتوانيد كد طرح سيستم و وظايف را با بكارگيري كد در پشت صفحاتي كه از ساختار وراثتي براي افزايش متدها به فرم استفاده ميكنند ،جداسازي نماييد.كنترل- هاي فرم .NET حالت جلسه را حفظ ميكنند به طوري كه ورود كاربران حين ارسال صفحه حفظ ميشود و مقادير ويژه كنترل ها دركدهاي ASP در دسترسي قرار ميگيرند ، بدون اينكه در درخواست براي شي خواسته شده ، دوباره مرتب شوند.
    كتابخانه هاي اصلي در بردارنده توانايي هاي جديد كه تا قبل توسط شركت هاي ديگر ارائه مانند System ميشد . ابزارهاي ترسيم كه امكان ساخت تصاوير متحرك را ميدهد ، امكان ارسال فايل وابسته به مرورگر به سرور و خدمات سيستمي شبكه براي كار با TCP/IPو DNS از اين خدمات ميباشد.
    با كمك وب سرويسهاي پشتيباني قرار داده شده براي SOAP شما ميتوانيد نرم افزارها و كد را توزيع كنيد. اسكريپتهاي ASP.NET شما ميتوانند خدمات موجود در سراسر وب را مورد استفاده قرار دهند و زير برنامه ها را بعنوان نوعي خدمات در معرض نمايش بگذارند و يا اينكه آنها را منتشر كنند.
    نصب و راه اندازي شامل پيكر بندي سرورهاي انتقالي كه پيكر بندي آنها قبلأ از طريق MMC در دسترس قرار نگرفته و اكنون توسط فايل هاي XML پياده سازي شده اند ، داراي اهميت ميباشد . اكنون ديگر نيازي به ثبت يا حذف اجزا وجود ندارد و سرور ميتواند نسخه هاي متعدد يك جز را بدون ايجاد ناهماهنگي مورد استفاده قرار دهد.
    خدمات حساس مربوط به وظايف ، پشتيباني از برقراري تعادل بار و انتخابهاي متعدد در مديريت وضعيت را افزايش داده است . اين انتخابها شامل قابليت ذخيره سازي اطلاعات وضعيت در يك پايگاه داده سرور SQL و عبور دادن ID جلسه بر روي URL به منظور جلوگيري از لزوم ظهور بلوك هاي داده اي (Cookie) براي كاربر ميباشند.
    چگونگي اجرا فايل هاي ASP توسط سرور
    هنگامي كه بازديدكننده سايتي آدرس يك صقحه وب را درخواست ميكند ، مرورگر با سرور وب مشخص شده در آدرس URL تماس برقرار نموده و درخواستي براي صفحه اي كه در درخواست HTTP به صورت فرمول اعلام ميكند. سرور وب به محض دريافت درخواست ، نوع فايل درخواستي را مشخص ميكند و پردازش را به سرور وب رسيدگي كننده اختصاصي ميفرستد . فايلهاي ASP.NET در صورت لزوم به كلاس هاي صفحات .NET كامپايل شده و سپس اجرا ميشوند و نتايج به مرورگر فرستاده خواهد شد.
    كامپايل نمودن به اين معني است كه در بار گذاري اول برنامه هاي ASP.NET به مدت زمان بيشتري براي حاضر شدن نياز است ولي بعد از كامپايل نمايش آنها به اندازه زيادي سريعتر ميشود.
    كامپايل و تحويل صفحات وب
    عمليات كامپايل و تحويل صفحات ASP.NET طي مراحل زير انجام مي گيرد:
    1- IIS ميانURL مورد در خواست با فايل موجود در سيستم فيزيكي فايل(ديسك سخت) مقايسه اي را انجام ميدهد ، اين مقايسه با ترجمه مسير واقعي ( به عنوان مثال/site/index.aspx ) به مسيري نسبت به ريشه وب سايت(به عنوان مثال d:domainsThissitewwwrootsiteindex.aspx ) صورت ميپذيرد.
    2- هنگامي كه فايل بدست آمد ، پسوند فايل (.aspx )با فهرستي از انواع معين فايلها مقايسه ميشوند تا معيين گردد كه آيا فايل بايد براي بازديد كننده ارسال شود و يا براي پردازش فرستاده شود.
    3- اگر نسبت به زماني كه فايل آخرين تغييرات را متحمل شده ، اين اولين بازديد از صفحه باشد ، كد ASP با استفاده از كامپايلرCommon Language Runtime به زبان اسمبلي شده (به MSIL ) پس براي اجرا به كد دودويي ويژه م�