M.A.H.S.A
08-22-2011, 11:48 AM
نسل جديد زبانهاي برنامهنويسي به اين دليل توليد ميشود كه زبانهاي قديميتر داراي امكانات محدود بوده و يا قدرت استفاده از تكنولوژيهاي فعلي را بصورت مطلوب ندارند. ASP.Net نسل جديدي از ASP بوده كه توسط شركت مايكروسافت عرضـه گرديده است. ASP.Net اولين سيستم جامع براي برنامهنويسي تحت وب (اينترنت) است كه از مراحل سطح پايين آن يعني زبان ماشين تا بالاترين سطح آن كه برنامهنويسي ويژوال ميباشد براي استفاده در اينترنت و شبكه هاي محلي طراحي شدهاست. بزرگترين مزيت آن در برابر سيستمهاي ديگر، امكانات اينترنت آن است. از ASP.Net ميتوان در طراحي و توليد سايتهاي وب اينترانت كوچك يك شركت و نيز سايتهاي وب تجاري خيلي بزرگ استفاده نمود. مهمترين نكتهاي كه در طراحي اين محصول درنظرگرفتهشدهاست، استفادهي آسان، كارآيي بالا و نيز قابليت فوقالعاده اين نرمافزار است.
ASP.Net، يك زبان برنامه نويسي run time است. ساختار آن بر اساس Framework بوده كه تمام لايههاي برنامه نويسي را در بالاي سيستم عامل دربرگرفتهاست. اين تمامي تكنولوژي هاي موجود از طرف مايكروسافت و ساير شركت ها را شامل ميشود. در .Net تمام اعمال تخصيص حافظه و سازماندهي فايل بعهدهي .Net Framework است. همين باعث ميشود تا بتوان برنامهاي را كه به سيستم عامل متكي نميباشد ، نوشت. اما قلب Framework، CLR ميباشد. مسؤول اجراي فايلها، فراخواني آنها به حافظه و كمپايلكردن آنها به زبان MSIL است. سپس كدهاي IL در هنگام اجرا، توسط برنامهي كمپايلر Just-in-time به زبان ماشين تبديل ميشود. اين بدان معني است كه در .Net دو مرحله براي كمپايلشدن وجود دارد. اولين مرحله وقتي است كه برنامه به IL كمپايل شود كه اين كد كمپايلشده، وابسته به سيستم عامل نميباشد. مرحلهي دوم زمان اجرا است كه كمپايلر Just-in-hime كد IL را براي اجرا به زبان ماشين ترجمه ميكند.
ASP.Net داراي چندين ويژگي مهم در مدلهاي توسعه يافته ميباشد:
- بهبود عملكرد- ASP.Net يك تكنولوژي قدرتمند از مجموعهي تكنولوژيهاي Server-side براي ايجاد صفحات وب پويا است . برخلاف پردازشگرهاي مفسر ،ASP.Net بهبود در مقيدسازي ،كمپايل Just-in-time، بهينهسازي و سرويس Cache را در بهترين شرايط ارائه ميدهد. ميتوان گفت ASP.Net بهترين عملكرد را قبل از نوشتن حتي يك خط برنامه ارائهخواهدداد.
- پشتيباني از ابزار جهاني - ASP.Net جعبه ابزاري كامل، و محيط طراحي توسعه يافتهاي دارد. به علت تغيير اساسياي كه در برنامه دادهشدهاست، برنامه اينترنتي قابليت گرافيكي در حد برنامههاي Win32GUI را دارا هست. ويرايش WYSIWYG، كنترلهاي بكشورهاكن سرور و گسترش اتوماتيك، از ويژگيهاي اين ابزار قدرتمند ميباشند.
- قدرت و انعطافپذيري - به واسطهي استفاده از CLR، ASP.Net از قدرت و انعطافپذيري خاصي در توسعهي برنامههاي كاربردي وب دارا است. كتابخانهي كلاس .Net، پيامها و راهحلهاي دستيابي داده، تواماً گواهي بر قدرت دستيابي وب ميباشد. XML، ADO.Net وThreading (اشيايي براي برنامه نويسي هر Thread ) از جملهي كلاسها و اشياي مورد استفادهي برنامهنويسان است. ASP.Net داراي زباني مستقل است كه ميتوانيد آنرا انتخاب و جزيي از زبانهاي برنامهي كاربردي خود قراردهيد.
- سادگي - ASP.Net كارها را ساده كرده و از يك فرم ساده و مجوزي، براي گسترش و پيكربندي سايت جهت ايجاد يك برنامه استفاده ميكند. براي مثال، يك صفحهي ASP.Net اجازه ميدهد شما رابط كاربري بسازيدكه برنامهي كاربردي آن جداي از كنترلهاي دستي ميباشد، در واقع Code-behind وجود دارد. بعلاوه براحتي با سرويس كدهاي مديريتي مانند ارجاع اتوماتيك و garbrage توسعه مييابد.
- مديريت- ASP.Net بر پايهي متن پيكربندي سلسله مراتبي كه در محيط سرور و برنامههاي كاربردي وب ظاهرميشود، كار ميكند. بدليل اينكه اطلاعات پيكربندي در متن ذخيره شده، تنظيمات جديد، بدون ابزار مديريتي ظاهرميشوند. اين مديريت، سبب گسترش برنامهيكاربردي در ASP.Net ميشود. برنامه كاربردي ASP.Net تحت سرور، به سادگي با كپي فايلهاي لازم روي سرور توسعه مييابند. سرور نياز به restart نداشته و تنها با جايگزيني كدهاي كمپايلشده يا توسعهيافته گسترش مييابد.
- قدرت و توانايي – ASP.Net با تفكر سطح بالايي طراحي شده و داراي ويژگي بهبود عملكرد كار در محيط هاي چند پردازنده است. پردازشها توسط ASP.Net مديريت شده ونمايشدادهميشوند. به عنوان مثال اگر گسيختگي پيشآيد، يك پردازش ميتواند در اين مكان ايجاد شود تا به درخواستهاي برنامه كاربردي كمك نمايد.
- مشتريمداري و قابليت تمديد- بر اساس معماري ASP.Net اجازهي توسعه Plug-inها را به شركتها و اشخاص خواهد داد. در واقع اين امكاني است كه به كاربران اجازهي نوشتن، جايگزين كردن، و به كار بردن قطعات نوشته شده را در ASP.Net ميدهد.
- امنيت- با استفاده از مجوزها در ويندوز وپيكربندي برنامهي كاربردي، يقيناً برنامه كاربردي مطمئني را ميتوان ارائه داد. ASP.Net قادر به ارائه امنيت در سطوح مختلف ميباشد.
از صفحات ايستا تا ASP.NET
در دههي نود اينترنت جايگاه ويژهاي در جهان كامپيوتر كسب كرد. برنامهنويسان براي خلق صفحات وبي كه حاوي كدهاي HTML بود، آن را در يك محيط ويرايشگر تايپ كرده و فايل مزبور را با انشعاب htm يا html ذخيره ميكردند. مؤلف صفحهي وب قبل از هر چيز، محتواي صفحه را بطور كامل تعيين مينمود. محتويات اين نوع صفحات (متن، تصوير، لينك و…) و شكل ظاهري آنها به استفادهكننده، زمان و نحوهي مشاهدهي صفحه بستگي نداشت. بنابراين بايد گفت محتويات اين قبيل صفحات قبل از اينكه درخواستي ايجاد گردد، بايد توسط مدير سايت ايجاد و مشخص ميشد.
اينگونه صفحات ايستا و داراي محدوديتهايي بودند. بعنوان مثال، درصورتيكه ميخواستيد براي هر كاربري كه از صفحهي شما بازديد ميكرد، زمان جاري سيستم و يك پيام مناسب را نمايش دهيد امري غيرممكن بود. در ضمن كدهاي HTML داراي هيچگونه امنيتي نبوده و نيستند. همچنين آنها توسط هر شخصي قابل رؤيت ميباشند. شايد بتوان تنها مزيت اين نوع صفحات را طراحي آسان، سرعت تكثير و توزيع در شبكه دانست.
تا اواسط دههي نود، ابزار مناسبي جهت توليد سايتهاي تجاري وب وجود نداشت. برنامهنويسان ميبايست روشي را جهت پويايي صفحات ايجاد نموده و از Common Getway Interface جهت ساخت سايتهاي خود استفاده ميكردند. CGI مكانيزمي براي ايجاد اسكريپت بر روي سرويسدهنده بود تا بدين طريق امكان ايجاد برنامههاي متكي بر وب فراهم گردد. اين امكان ميبايست با استفاده از زبانهايي نظيرC، C++، VisualBasic ، perl و Delphi در يك ماژول به سرويسدهندهي وب اضافه ميشد.
مايكروسافت با كمك مرورگر وب خود Internet Explorer و سرويسدهندهي IIS توانست بازار مرورگر و سرويسدهنده را بدست آورد. سرويسدهندهي وب، نرمافزاري است كه مديريت صفحات وب را برعهده گرفته و آنها را براي سرويسگيرندگان مجهز به مرورگر، قابل دستيابي و استفاده مينمايد.
صفحات پويا به دو طريق مورد استفاده قرار ميگرفتند:
1- صفحات پوياي سمت سرويسگيرنده – در آن، كدهـاي HTML به همراه مجمـوعهاي از دستورالعملها براي سرويسدهنده ارسال و مجدداً از دستورالعمل فوق جهت توليد كدهاي HTML صفحهاي كه كاربر درخواست كرده استفاده ميشد.
2- صفحات پوياي سمت سرويسدهنده – ماژولهايي هستند كه به مرورگر ملحق شده، تمامي عمليات لازم جهت ايجاد صفحات پويا را انجام خواهند داد. كدهاي HTML از طريق فايلي مجزا كه حاوي دستورالعملهاست براي مرورگر ارسال و در زمان درخواست يك صفحه توسط كاربر بكار گرفته خواهد شد.
نخستين محصول مايكروسافت كه در بهبود وضعيت برنامهنويسي نقش داشت، رابط برنامهنويسي كاربردي سرور اينترنت ISAPI بود كه بعنوان شيوهاي جهت توليد نرمافزار سرور وب مطرح گرديد تا با عملكردي دروني باIIS در ارتباط باشد. اين فرآيند، كارايي سيستم را افزايش داد. اما براي عملكرد صحيح برنامههاي ISAPI نياز به دانش دقيق برنامهنويسي بود.
ISAPI جهت برقراري ارتباط با بانكهاي ارتباطي، فنآوري IDC را مطرح نمود كه ارتباط ميان سايتهاي وب با پايگاه داده را از طريق ODBC برقرار ميكرد. چون نوشتن نرمافزارهاي ISAPI نيازمند مهارتهاي برنامه نويسي بود، روند برنامهنويسي را كند كرده و براي برنامهنويسان مبتدي و متوسط، كار بسيار طاقتفرسايي مينمود. بطور مثال C++ جهت كامپايل نمودن صفحهي خود نيازمند فايلهاي با پسوند .dll بود . ويژوال بيسيك عليرغم سهولت يادگيري، بسيار ضعيف عمل نموده و تمام منابع را تحت اختيار ميگرفت. Perl يك خط دستور جهت تغيير و اجراي اسكريپت نياز داشت كه باعث افزايش زمان بارگذاري و كاهش كارايي ميشد.
ASP در اكتبر 1996 عرضه شد . ASP1 بعنوان اولين عضو خانوادهي ASP به همراه محيط Visual Interdev داراي امكانات شگفتانگيز و قدرتمند بود. ADO از جملهي اين امكانات بود كه امكان دستيابي به ركوردها و گزارشگيري را به دارا بود.
پس از به ثبات رسيدن ASP1، مايكروسافت نسخهي جديدي را با Windows NT4 Optionpack عرضه كرد كه همراه برنامه راهانداز سرور وب بود. ASP2 با بهبودهايي در افزايش عملكرد سيستم فايل، ابزار بيشتر و بهبود زبان همراه بود. برنامهنويسان نيز اجزايي توليد كردند كه بر اساس معماري مبتني بر مدل شيئ COM عرضه شد.
ASP2 محيطي با ثباتتر و امكانات بيشتر را در اختيار برنامهنويسان قرار داد. اين فنآوري تحت پوشش Microsoft Transaction Server يكپارچگي مستحكمتري را بخود گرفته بود. چون در JSP – تكنولوژي تركيب HTML و يا XML با كدهاي جاوا – پيش از اجرا، كدها كامپايل ميشدند نسبت به ASP2 از كارايي نسبتاً بالاتري برخوردار بودند. همچنين رفع خطاها، جهتيابي اشياء، ادارهي صفحات و تايپ متغيرها بسيار سادهتر بود.
با ظهور ويندوز 2000، ASP3 با امكان كامپايل بجاي پردازش خط به خط عرضه شد و كارايي ASP را به ميزان قابل ملاحظهاي افزايش داد. ASP3 همراه با IIS5 به بازار آمد كه IIS شامل گزينهاي جهت جداسازي نرمافزارهاي وب و پردازشها بود. در اين نسخه است كه مايكروسافت مفهوم اسكريپتهاي سرور را عرضه كرد. زبانهاي اسكريپت نظير جاوا اسكريپت و VB script توانسته است پاسخي شايسته به طراحي صفحات وب پويا ارائه نمايد. اين مفهوم شامل اشياء COM است كه بصورت فايلهاي زبان، توسعه پذير و بر پايهي متن ميباشد.
در اين نسخه، ASP و ADO با كمك XML توانايي بيشتري بدست آورده و نيز قابليت خود تنظيمي سرور وب و مخفيسازي كد كمپايل شده و Caching از جمله اين پيشرفتها محسوب ميشد. اما ضعفهايي نيز در مدل ASP3 وجود داشت، از جمله تسلط زبانهاي ناكارآمد اسكريپتنويسي مانند J Script و VB Script بر ASP و مديريت سيستمها جهت پيكربندي سرور وب است كه خود يك مشكل محسوب ميشوند.
واضح است كه مايكروسافت جهت مقابله با جاوا دست به تغيير اصولي در ASP بزند و آنرا به سطح استاندارد برنامهنويسي قدرتمند برساند. با توجه به فنآوري مبتني بر اصل Com، ActiveX كه بخش مهمي از قدرت ASP را فراهم ميكردند، محدوديتهايي نيز در برداشتند. مايكروسافت ميبايست با Sun بطوري مقابله مينمود كه معماري فني و منطقي، براي نرمافزارهاي توزيع شدهي جديد فراهم ميكرد. Sun با استفاده از J2EE مجموعهاي از فنآوري ها را در اختيار داشت كه برنامهنويسان با دنبال كردن پروژههاي كوچك همراه با Standard Edition ، آنها را براي Enterprise Java Beans كاملا تغيير اندازه ميدادند.
مايكروسافت با ارائهي .Net بر تمام انتقادهاي مطرح شده خط بطلان كشيد و شيوهي كاملا جديدي در بررسي نرمافزار و وب بوجود آورد. همچنين زبان جديد خود يعني C# را در معرض نمايش قرار داد و نويد ارائهي عملكرد و انعطاف پذيري بهتري نسبت به گذشته و پشتيباني از انواع مختلف استانداردهاي اينترنت را داد.
C# بعنوان زبان .Net كاملا جديد و براي برنامهنويسان C كاملا آشنا ميباشد، ولي داراي امكانات جديد است. همچنين برخي از خواص RAD كه مورد علاقهي برنامهنويسان ويژوال بيسيك است را نيز دارا ميباشد. برخي ميگويند C# جهت رقابت با Java ي شركت SUN داراي امكاناتي نظير شيئ گرايي كامل، مديريت خودكار حافظه و مرتبسازي محيط كار ميباشد. مايكروسافت ASP.Net را همراه با Visual Studio.Net و زبانهايي نظير C# ، C++ و Visual Basic و قابليت تطبيق با زبانهاي ديگر عرضه داشت.
لازم به ذكر است كه ASP.Net و ASP دو فنآوري تقريباً متفاوتند. در ASP تنها پنج كلاس استاندارد وجود داشت، در حاليكه در ASP.Net ميتوان از بيش از 4500 كلاس استاندارد در بدنهي .Net بهره جست. همچنين عليرغم قدرت و امكانات زياد و متعدد ، استفاده از آن در مقايسه با ASP بسيار آسانتر است.
ابزارهاي كار ASP.Net
براي شروع كار با ASP.Net نياز به ابزاري جهت اجرا و نوشتن برنامهها داريم. اگر از ويندوز 2000 به بالا استفاده نماييد، برخي از آن امكانات همراه سيستم عامل ارائه شده است كه ميتوانيد از آنها استفاده كنيد. ابزاري كه نياز داريد عبارتند از :
- مرورگر - جهت نمايش برنامههاي ASP.Net به مرورگرهايي نظيرInternet Explorer ، Opera ، NetScape Navigator يا … نياز داريد. لازم به ذكر است كه ASP.Net مستقل از مرورگر ميباشد.
- سرور اطلاعات اينترنت IIS - براي ايجاد و ميزباني برنامههاي كاربردي ASP.Net نيازمنديم IIS رافعال كنيم. IIS روشي آسان، كارآمد و مؤثر را بر روي اطلاعات از طريق سرويسهاي مبتني بر وب ارائه ميدهد. از ويندوز 2000 به بعد IIS به عنوان يكي از اجزاي داخلي ويندوز درآمده است. در صورتيكه از نسخههاي پايينتر استفاده مينماييد - كه توصيه نميشود - بايد PWS را به جاي IIS نصب نماييد.
در صورتي كه اين نرم افزار فعال نباشد ميتوانيد به شيوهي زير آنرا فعال كنيد :
ابتدا دكمهي start را فشرده سپس Control Panel را (از منوي Setting) انتخاب نماييد تا پنجرهي مربوطه باز شود. از اين پنجره دكمهي Add or Remove Programs را كليك كنيد. آنگاه روي آيكون Add/Remove Windows Component كه در سمت چپ پنجره قرار دارد كليك نماييد تا پنجره Windows Component wizard باز شود. يكي از گزينههايي كه در پنجرهي Component وجود دارد Internet Information services است. آنرا علامتدار كنيد تا سرويسهاي زير فعال شوند: Common Files، Ftp، WWW، SMTP ، Information Services shap-In و Frontpage 2000 Server.
- .Net Framework – فنآوريي است كه در توسعهي ASP.Net ضروري بوده و سرويسهايي نظير ايجاد فرمهاي ويندوز و فنآوري جديد rich client development را ارائه ميدهد و شامل دو بخش است:
Common Language Run time ● - محيط run time اي ايجاد ميكند كه در آن كدهاي نوشته شده به زبان هاي .Net اجرا ميشود. آن، مديريت اجراي كدهاي .Net را نيز بر عهده دارد كه شامل مديريت حافظه و اشياء ميباشد. علاوه بر سرويسهاي مديريتي، اشكال زدايي، رسيدگي به استثنائات و وراثت در ميان چند زبان را داراست. لازمهي اجراي اين وظايف آن است كه كامپايلرهاي زبان از CLS پشتيباني ميكند. كامپايلرها، كدهاي نوشته شده را به كد مياني MSIL تبديل مينمايد. سپس در زمان نصب و يا در حين اجرا ، به كد ماشين تبديل ميگردند.
● Class Library – مجموعهاي از كلاسهاي .Net است كه برنامهنويسان را قادر ميسازد تا از برنامههاي كاربردي خود استفاده نمايند. اين كلاسها توسط محفظههايي به نام Name space سازماندهي ميشوند.
.Net Frame work شامل كامپايلر زبانهاي C# ، Visual Basic و JScript است، همچنين ميتوان زبانهاي ديگري نظير Cobol.Net و Perl را نيز به آن افزود.
- Visual Studio.Net – جهت افزايش سرعت و راحتي برنامهنويسي مورد استفاده قرار ميدهند. يك محيط توسعه مجتمع IDE است كه زبانهاي Visual Basic ، Visual C ++ و C# را دارا بوده و همچنين قابليتهايي نظير خطايابي و اشكالزدايي از اين محيط بصورت اشتراكي استفاده ميكنند.
Visual Studio.Net داراي امكانات زير است:
● مدل برنامهنويسي متحدالشكل و منفرد براي تمام زبانهاي .Net و براي برنامههاي كاربردي وب و ويندوز.
● توسعه Drag and Drop براي سرور با استفاده از Server Explorer .
● راهنمايي پويا.
● پشتيباني كامل از XML .
● مدل تعميم يافته و سفارشي قوي جهت IDE .
● سرويسهاي وب با جامعسازي برنامههاي كاربردي به مراتب آسانتر.
زبانهاي زيادي توسط Visual Studio.Net پشتيباني ميشود كه ليست زير بيانگربرخي از آنهاست:
APL, C#, Cobol, Eiffel, JScript, Harkell, ML, Obron, Pascal, Perl, Python, Scheme, Small talk, Visual Basic.Net, Visual C ++ و … .
زبانهايي نظير VisualC ++، Visual Basic.Net و C# همراه با Visual Studio.Net ارائه شدهاند و بخاطر پشتيباني از معماري Plug-in در Visual Studio.Net به زبانهاي ديگري كه براي انتقال به بستر .Net در نظر گرفته شده يا نوشته شدهاند اين امكان را ميدهد كه به آساني از قدرت Visual studio IDE بهرهگيرند.
Visual Basic.Net شامل پنج لوح فشرده است كه لوح شمارهي پنج حاوي Component هايي نظير Net Frame work ، Front page 2000 Server و Microsoft Data Access Component ميباشد. بعد از قرار دادن لوح شمارهي1 از Visual Basic.Net در صورتي كه Component هاي فوق نصب نشده باشند، ابتدا بايد روي متن Update Component كليك نماييد، سپس مسير آنها را كه در لوح شمارهي پنج است به سيستم بدهيد – لوح شمارهي پنج را جايگزين لوح شمارة 1 نماييد – آنگاه كليهي Component ها نصب شده، هنگامي كه تأييديه انجام نصب را از شما دريافت نمود، نصب برنامهي VS.Net آغاز خواهد شد و در ادامه لوح شمارهي 2 تا 4 را از شما جهت نصب ميطلبد.
منبع : www.asp.net
ASP.Net، يك زبان برنامه نويسي run time است. ساختار آن بر اساس Framework بوده كه تمام لايههاي برنامه نويسي را در بالاي سيستم عامل دربرگرفتهاست. اين تمامي تكنولوژي هاي موجود از طرف مايكروسافت و ساير شركت ها را شامل ميشود. در .Net تمام اعمال تخصيص حافظه و سازماندهي فايل بعهدهي .Net Framework است. همين باعث ميشود تا بتوان برنامهاي را كه به سيستم عامل متكي نميباشد ، نوشت. اما قلب Framework، CLR ميباشد. مسؤول اجراي فايلها، فراخواني آنها به حافظه و كمپايلكردن آنها به زبان MSIL است. سپس كدهاي IL در هنگام اجرا، توسط برنامهي كمپايلر Just-in-time به زبان ماشين تبديل ميشود. اين بدان معني است كه در .Net دو مرحله براي كمپايلشدن وجود دارد. اولين مرحله وقتي است كه برنامه به IL كمپايل شود كه اين كد كمپايلشده، وابسته به سيستم عامل نميباشد. مرحلهي دوم زمان اجرا است كه كمپايلر Just-in-hime كد IL را براي اجرا به زبان ماشين ترجمه ميكند.
ASP.Net داراي چندين ويژگي مهم در مدلهاي توسعه يافته ميباشد:
- بهبود عملكرد- ASP.Net يك تكنولوژي قدرتمند از مجموعهي تكنولوژيهاي Server-side براي ايجاد صفحات وب پويا است . برخلاف پردازشگرهاي مفسر ،ASP.Net بهبود در مقيدسازي ،كمپايل Just-in-time، بهينهسازي و سرويس Cache را در بهترين شرايط ارائه ميدهد. ميتوان گفت ASP.Net بهترين عملكرد را قبل از نوشتن حتي يك خط برنامه ارائهخواهدداد.
- پشتيباني از ابزار جهاني - ASP.Net جعبه ابزاري كامل، و محيط طراحي توسعه يافتهاي دارد. به علت تغيير اساسياي كه در برنامه دادهشدهاست، برنامه اينترنتي قابليت گرافيكي در حد برنامههاي Win32GUI را دارا هست. ويرايش WYSIWYG، كنترلهاي بكشورهاكن سرور و گسترش اتوماتيك، از ويژگيهاي اين ابزار قدرتمند ميباشند.
- قدرت و انعطافپذيري - به واسطهي استفاده از CLR، ASP.Net از قدرت و انعطافپذيري خاصي در توسعهي برنامههاي كاربردي وب دارا است. كتابخانهي كلاس .Net، پيامها و راهحلهاي دستيابي داده، تواماً گواهي بر قدرت دستيابي وب ميباشد. XML، ADO.Net وThreading (اشيايي براي برنامه نويسي هر Thread ) از جملهي كلاسها و اشياي مورد استفادهي برنامهنويسان است. ASP.Net داراي زباني مستقل است كه ميتوانيد آنرا انتخاب و جزيي از زبانهاي برنامهي كاربردي خود قراردهيد.
- سادگي - ASP.Net كارها را ساده كرده و از يك فرم ساده و مجوزي، براي گسترش و پيكربندي سايت جهت ايجاد يك برنامه استفاده ميكند. براي مثال، يك صفحهي ASP.Net اجازه ميدهد شما رابط كاربري بسازيدكه برنامهي كاربردي آن جداي از كنترلهاي دستي ميباشد، در واقع Code-behind وجود دارد. بعلاوه براحتي با سرويس كدهاي مديريتي مانند ارجاع اتوماتيك و garbrage توسعه مييابد.
- مديريت- ASP.Net بر پايهي متن پيكربندي سلسله مراتبي كه در محيط سرور و برنامههاي كاربردي وب ظاهرميشود، كار ميكند. بدليل اينكه اطلاعات پيكربندي در متن ذخيره شده، تنظيمات جديد، بدون ابزار مديريتي ظاهرميشوند. اين مديريت، سبب گسترش برنامهيكاربردي در ASP.Net ميشود. برنامه كاربردي ASP.Net تحت سرور، به سادگي با كپي فايلهاي لازم روي سرور توسعه مييابند. سرور نياز به restart نداشته و تنها با جايگزيني كدهاي كمپايلشده يا توسعهيافته گسترش مييابد.
- قدرت و توانايي – ASP.Net با تفكر سطح بالايي طراحي شده و داراي ويژگي بهبود عملكرد كار در محيط هاي چند پردازنده است. پردازشها توسط ASP.Net مديريت شده ونمايشدادهميشوند. به عنوان مثال اگر گسيختگي پيشآيد، يك پردازش ميتواند در اين مكان ايجاد شود تا به درخواستهاي برنامه كاربردي كمك نمايد.
- مشتريمداري و قابليت تمديد- بر اساس معماري ASP.Net اجازهي توسعه Plug-inها را به شركتها و اشخاص خواهد داد. در واقع اين امكاني است كه به كاربران اجازهي نوشتن، جايگزين كردن، و به كار بردن قطعات نوشته شده را در ASP.Net ميدهد.
- امنيت- با استفاده از مجوزها در ويندوز وپيكربندي برنامهي كاربردي، يقيناً برنامه كاربردي مطمئني را ميتوان ارائه داد. ASP.Net قادر به ارائه امنيت در سطوح مختلف ميباشد.
از صفحات ايستا تا ASP.NET
در دههي نود اينترنت جايگاه ويژهاي در جهان كامپيوتر كسب كرد. برنامهنويسان براي خلق صفحات وبي كه حاوي كدهاي HTML بود، آن را در يك محيط ويرايشگر تايپ كرده و فايل مزبور را با انشعاب htm يا html ذخيره ميكردند. مؤلف صفحهي وب قبل از هر چيز، محتواي صفحه را بطور كامل تعيين مينمود. محتويات اين نوع صفحات (متن، تصوير، لينك و…) و شكل ظاهري آنها به استفادهكننده، زمان و نحوهي مشاهدهي صفحه بستگي نداشت. بنابراين بايد گفت محتويات اين قبيل صفحات قبل از اينكه درخواستي ايجاد گردد، بايد توسط مدير سايت ايجاد و مشخص ميشد.
اينگونه صفحات ايستا و داراي محدوديتهايي بودند. بعنوان مثال، درصورتيكه ميخواستيد براي هر كاربري كه از صفحهي شما بازديد ميكرد، زمان جاري سيستم و يك پيام مناسب را نمايش دهيد امري غيرممكن بود. در ضمن كدهاي HTML داراي هيچگونه امنيتي نبوده و نيستند. همچنين آنها توسط هر شخصي قابل رؤيت ميباشند. شايد بتوان تنها مزيت اين نوع صفحات را طراحي آسان، سرعت تكثير و توزيع در شبكه دانست.
تا اواسط دههي نود، ابزار مناسبي جهت توليد سايتهاي تجاري وب وجود نداشت. برنامهنويسان ميبايست روشي را جهت پويايي صفحات ايجاد نموده و از Common Getway Interface جهت ساخت سايتهاي خود استفاده ميكردند. CGI مكانيزمي براي ايجاد اسكريپت بر روي سرويسدهنده بود تا بدين طريق امكان ايجاد برنامههاي متكي بر وب فراهم گردد. اين امكان ميبايست با استفاده از زبانهايي نظيرC، C++، VisualBasic ، perl و Delphi در يك ماژول به سرويسدهندهي وب اضافه ميشد.
مايكروسافت با كمك مرورگر وب خود Internet Explorer و سرويسدهندهي IIS توانست بازار مرورگر و سرويسدهنده را بدست آورد. سرويسدهندهي وب، نرمافزاري است كه مديريت صفحات وب را برعهده گرفته و آنها را براي سرويسگيرندگان مجهز به مرورگر، قابل دستيابي و استفاده مينمايد.
صفحات پويا به دو طريق مورد استفاده قرار ميگرفتند:
1- صفحات پوياي سمت سرويسگيرنده – در آن، كدهـاي HTML به همراه مجمـوعهاي از دستورالعملها براي سرويسدهنده ارسال و مجدداً از دستورالعمل فوق جهت توليد كدهاي HTML صفحهاي كه كاربر درخواست كرده استفاده ميشد.
2- صفحات پوياي سمت سرويسدهنده – ماژولهايي هستند كه به مرورگر ملحق شده، تمامي عمليات لازم جهت ايجاد صفحات پويا را انجام خواهند داد. كدهاي HTML از طريق فايلي مجزا كه حاوي دستورالعملهاست براي مرورگر ارسال و در زمان درخواست يك صفحه توسط كاربر بكار گرفته خواهد شد.
نخستين محصول مايكروسافت كه در بهبود وضعيت برنامهنويسي نقش داشت، رابط برنامهنويسي كاربردي سرور اينترنت ISAPI بود كه بعنوان شيوهاي جهت توليد نرمافزار سرور وب مطرح گرديد تا با عملكردي دروني باIIS در ارتباط باشد. اين فرآيند، كارايي سيستم را افزايش داد. اما براي عملكرد صحيح برنامههاي ISAPI نياز به دانش دقيق برنامهنويسي بود.
ISAPI جهت برقراري ارتباط با بانكهاي ارتباطي، فنآوري IDC را مطرح نمود كه ارتباط ميان سايتهاي وب با پايگاه داده را از طريق ODBC برقرار ميكرد. چون نوشتن نرمافزارهاي ISAPI نيازمند مهارتهاي برنامه نويسي بود، روند برنامهنويسي را كند كرده و براي برنامهنويسان مبتدي و متوسط، كار بسيار طاقتفرسايي مينمود. بطور مثال C++ جهت كامپايل نمودن صفحهي خود نيازمند فايلهاي با پسوند .dll بود . ويژوال بيسيك عليرغم سهولت يادگيري، بسيار ضعيف عمل نموده و تمام منابع را تحت اختيار ميگرفت. Perl يك خط دستور جهت تغيير و اجراي اسكريپت نياز داشت كه باعث افزايش زمان بارگذاري و كاهش كارايي ميشد.
ASP در اكتبر 1996 عرضه شد . ASP1 بعنوان اولين عضو خانوادهي ASP به همراه محيط Visual Interdev داراي امكانات شگفتانگيز و قدرتمند بود. ADO از جملهي اين امكانات بود كه امكان دستيابي به ركوردها و گزارشگيري را به دارا بود.
پس از به ثبات رسيدن ASP1، مايكروسافت نسخهي جديدي را با Windows NT4 Optionpack عرضه كرد كه همراه برنامه راهانداز سرور وب بود. ASP2 با بهبودهايي در افزايش عملكرد سيستم فايل، ابزار بيشتر و بهبود زبان همراه بود. برنامهنويسان نيز اجزايي توليد كردند كه بر اساس معماري مبتني بر مدل شيئ COM عرضه شد.
ASP2 محيطي با ثباتتر و امكانات بيشتر را در اختيار برنامهنويسان قرار داد. اين فنآوري تحت پوشش Microsoft Transaction Server يكپارچگي مستحكمتري را بخود گرفته بود. چون در JSP – تكنولوژي تركيب HTML و يا XML با كدهاي جاوا – پيش از اجرا، كدها كامپايل ميشدند نسبت به ASP2 از كارايي نسبتاً بالاتري برخوردار بودند. همچنين رفع خطاها، جهتيابي اشياء، ادارهي صفحات و تايپ متغيرها بسيار سادهتر بود.
با ظهور ويندوز 2000، ASP3 با امكان كامپايل بجاي پردازش خط به خط عرضه شد و كارايي ASP را به ميزان قابل ملاحظهاي افزايش داد. ASP3 همراه با IIS5 به بازار آمد كه IIS شامل گزينهاي جهت جداسازي نرمافزارهاي وب و پردازشها بود. در اين نسخه است كه مايكروسافت مفهوم اسكريپتهاي سرور را عرضه كرد. زبانهاي اسكريپت نظير جاوا اسكريپت و VB script توانسته است پاسخي شايسته به طراحي صفحات وب پويا ارائه نمايد. اين مفهوم شامل اشياء COM است كه بصورت فايلهاي زبان، توسعه پذير و بر پايهي متن ميباشد.
در اين نسخه، ASP و ADO با كمك XML توانايي بيشتري بدست آورده و نيز قابليت خود تنظيمي سرور وب و مخفيسازي كد كمپايل شده و Caching از جمله اين پيشرفتها محسوب ميشد. اما ضعفهايي نيز در مدل ASP3 وجود داشت، از جمله تسلط زبانهاي ناكارآمد اسكريپتنويسي مانند J Script و VB Script بر ASP و مديريت سيستمها جهت پيكربندي سرور وب است كه خود يك مشكل محسوب ميشوند.
واضح است كه مايكروسافت جهت مقابله با جاوا دست به تغيير اصولي در ASP بزند و آنرا به سطح استاندارد برنامهنويسي قدرتمند برساند. با توجه به فنآوري مبتني بر اصل Com، ActiveX كه بخش مهمي از قدرت ASP را فراهم ميكردند، محدوديتهايي نيز در برداشتند. مايكروسافت ميبايست با Sun بطوري مقابله مينمود كه معماري فني و منطقي، براي نرمافزارهاي توزيع شدهي جديد فراهم ميكرد. Sun با استفاده از J2EE مجموعهاي از فنآوري ها را در اختيار داشت كه برنامهنويسان با دنبال كردن پروژههاي كوچك همراه با Standard Edition ، آنها را براي Enterprise Java Beans كاملا تغيير اندازه ميدادند.
مايكروسافت با ارائهي .Net بر تمام انتقادهاي مطرح شده خط بطلان كشيد و شيوهي كاملا جديدي در بررسي نرمافزار و وب بوجود آورد. همچنين زبان جديد خود يعني C# را در معرض نمايش قرار داد و نويد ارائهي عملكرد و انعطاف پذيري بهتري نسبت به گذشته و پشتيباني از انواع مختلف استانداردهاي اينترنت را داد.
C# بعنوان زبان .Net كاملا جديد و براي برنامهنويسان C كاملا آشنا ميباشد، ولي داراي امكانات جديد است. همچنين برخي از خواص RAD كه مورد علاقهي برنامهنويسان ويژوال بيسيك است را نيز دارا ميباشد. برخي ميگويند C# جهت رقابت با Java ي شركت SUN داراي امكاناتي نظير شيئ گرايي كامل، مديريت خودكار حافظه و مرتبسازي محيط كار ميباشد. مايكروسافت ASP.Net را همراه با Visual Studio.Net و زبانهايي نظير C# ، C++ و Visual Basic و قابليت تطبيق با زبانهاي ديگر عرضه داشت.
لازم به ذكر است كه ASP.Net و ASP دو فنآوري تقريباً متفاوتند. در ASP تنها پنج كلاس استاندارد وجود داشت، در حاليكه در ASP.Net ميتوان از بيش از 4500 كلاس استاندارد در بدنهي .Net بهره جست. همچنين عليرغم قدرت و امكانات زياد و متعدد ، استفاده از آن در مقايسه با ASP بسيار آسانتر است.
ابزارهاي كار ASP.Net
براي شروع كار با ASP.Net نياز به ابزاري جهت اجرا و نوشتن برنامهها داريم. اگر از ويندوز 2000 به بالا استفاده نماييد، برخي از آن امكانات همراه سيستم عامل ارائه شده است كه ميتوانيد از آنها استفاده كنيد. ابزاري كه نياز داريد عبارتند از :
- مرورگر - جهت نمايش برنامههاي ASP.Net به مرورگرهايي نظيرInternet Explorer ، Opera ، NetScape Navigator يا … نياز داريد. لازم به ذكر است كه ASP.Net مستقل از مرورگر ميباشد.
- سرور اطلاعات اينترنت IIS - براي ايجاد و ميزباني برنامههاي كاربردي ASP.Net نيازمنديم IIS رافعال كنيم. IIS روشي آسان، كارآمد و مؤثر را بر روي اطلاعات از طريق سرويسهاي مبتني بر وب ارائه ميدهد. از ويندوز 2000 به بعد IIS به عنوان يكي از اجزاي داخلي ويندوز درآمده است. در صورتيكه از نسخههاي پايينتر استفاده مينماييد - كه توصيه نميشود - بايد PWS را به جاي IIS نصب نماييد.
در صورتي كه اين نرم افزار فعال نباشد ميتوانيد به شيوهي زير آنرا فعال كنيد :
ابتدا دكمهي start را فشرده سپس Control Panel را (از منوي Setting) انتخاب نماييد تا پنجرهي مربوطه باز شود. از اين پنجره دكمهي Add or Remove Programs را كليك كنيد. آنگاه روي آيكون Add/Remove Windows Component كه در سمت چپ پنجره قرار دارد كليك نماييد تا پنجره Windows Component wizard باز شود. يكي از گزينههايي كه در پنجرهي Component وجود دارد Internet Information services است. آنرا علامتدار كنيد تا سرويسهاي زير فعال شوند: Common Files، Ftp، WWW، SMTP ، Information Services shap-In و Frontpage 2000 Server.
- .Net Framework – فنآوريي است كه در توسعهي ASP.Net ضروري بوده و سرويسهايي نظير ايجاد فرمهاي ويندوز و فنآوري جديد rich client development را ارائه ميدهد و شامل دو بخش است:
Common Language Run time ● - محيط run time اي ايجاد ميكند كه در آن كدهاي نوشته شده به زبان هاي .Net اجرا ميشود. آن، مديريت اجراي كدهاي .Net را نيز بر عهده دارد كه شامل مديريت حافظه و اشياء ميباشد. علاوه بر سرويسهاي مديريتي، اشكال زدايي، رسيدگي به استثنائات و وراثت در ميان چند زبان را داراست. لازمهي اجراي اين وظايف آن است كه كامپايلرهاي زبان از CLS پشتيباني ميكند. كامپايلرها، كدهاي نوشته شده را به كد مياني MSIL تبديل مينمايد. سپس در زمان نصب و يا در حين اجرا ، به كد ماشين تبديل ميگردند.
● Class Library – مجموعهاي از كلاسهاي .Net است كه برنامهنويسان را قادر ميسازد تا از برنامههاي كاربردي خود استفاده نمايند. اين كلاسها توسط محفظههايي به نام Name space سازماندهي ميشوند.
.Net Frame work شامل كامپايلر زبانهاي C# ، Visual Basic و JScript است، همچنين ميتوان زبانهاي ديگري نظير Cobol.Net و Perl را نيز به آن افزود.
- Visual Studio.Net – جهت افزايش سرعت و راحتي برنامهنويسي مورد استفاده قرار ميدهند. يك محيط توسعه مجتمع IDE است كه زبانهاي Visual Basic ، Visual C ++ و C# را دارا بوده و همچنين قابليتهايي نظير خطايابي و اشكالزدايي از اين محيط بصورت اشتراكي استفاده ميكنند.
Visual Studio.Net داراي امكانات زير است:
● مدل برنامهنويسي متحدالشكل و منفرد براي تمام زبانهاي .Net و براي برنامههاي كاربردي وب و ويندوز.
● توسعه Drag and Drop براي سرور با استفاده از Server Explorer .
● راهنمايي پويا.
● پشتيباني كامل از XML .
● مدل تعميم يافته و سفارشي قوي جهت IDE .
● سرويسهاي وب با جامعسازي برنامههاي كاربردي به مراتب آسانتر.
زبانهاي زيادي توسط Visual Studio.Net پشتيباني ميشود كه ليست زير بيانگربرخي از آنهاست:
APL, C#, Cobol, Eiffel, JScript, Harkell, ML, Obron, Pascal, Perl, Python, Scheme, Small talk, Visual Basic.Net, Visual C ++ و … .
زبانهايي نظير VisualC ++، Visual Basic.Net و C# همراه با Visual Studio.Net ارائه شدهاند و بخاطر پشتيباني از معماري Plug-in در Visual Studio.Net به زبانهاي ديگري كه براي انتقال به بستر .Net در نظر گرفته شده يا نوشته شدهاند اين امكان را ميدهد كه به آساني از قدرت Visual studio IDE بهرهگيرند.
Visual Basic.Net شامل پنج لوح فشرده است كه لوح شمارهي پنج حاوي Component هايي نظير Net Frame work ، Front page 2000 Server و Microsoft Data Access Component ميباشد. بعد از قرار دادن لوح شمارهي1 از Visual Basic.Net در صورتي كه Component هاي فوق نصب نشده باشند، ابتدا بايد روي متن Update Component كليك نماييد، سپس مسير آنها را كه در لوح شمارهي پنج است به سيستم بدهيد – لوح شمارهي پنج را جايگزين لوح شمارة 1 نماييد – آنگاه كليهي Component ها نصب شده، هنگامي كه تأييديه انجام نصب را از شما دريافت نمود، نصب برنامهي VS.Net آغاز خواهد شد و در ادامه لوح شمارهي 2 تا 4 را از شما جهت نصب ميطلبد.
منبع : www.asp.net