سه شنبه 16 اسفند 1390

چرا ASP.Net را انتخاب کنیم؟

نسل جدید زبان‌های برنامه‌نویسی به این دلیل تولید می‌شود كه زبان‌های قدیمی‌تر دارای امكانات محدود بوده و یا قدرت استفاده از تكنولوژی‌های فعلی را بصورت مطلوب ندارند. ASP.Net نسل جدیدی از ASP بوده كه توسط شركت مایكروسافت عرضـه گردیده است. ASP.Net اولین سیستم جامع برای برنامه‌نویسی تحت وب (اینترنت) است كه از مراحل سطح پایین آن یعنی زبان ماشین تا بالاترین سطح آن كه برنامه‌نویسی ویژوال می‌باشد برای استفاده در اینترنت و شبكه های محلی طراحی شده&z

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 فراتر از یک نسخه تکمیل شده در مقایسه با نسخه قبلی خود یعنی ASP کلاسیک است. ASP.NET یک محیط کامل جهت پیاده سازی نرم افزارهای تحت وب است. با اینکه ASP.NET از لحاظ گرامر با ASP کلاسیک شباهت هائی را دارد ولی تکنولوژی فوق با ارایه یک مدل جدید برنامه نویسی بهمراه زیر ساخت های لازم امکان ایجاد نرم افزارهای تحت وب را با امنیت و استحکام بیشتر فراهم می آورد.

ASP.NET برخلاف ASP کلاسیک ترجمه می گردد. در محیط دات نت می توان با استفاده از هر یک از زبانهای برنامه نویسی حمایت شده نظیر: Visual Basic.Net/c#/Jscrip.Net اقدام به نوشتن برنامه ها نمود. برنامه های ASP.NET از تمامی توان و پتانسیل های ارایه شده توسط دات نت استفاده می نمایند.

در ASP.NET می توان از ویرایشگرها ی ویژوال و سایر ابزارهای برنامه نویسی نظیر ویژوال استودیو دات نت استفاده نمود. پیاده کنندگان نرم افزارهای تحت وب به کمک ASP.NET می توانند از دو تکنولوژی عمده فرم های وب (Web Forms) و سرویس های وب (Web service) برای ایجاد نرم افزار استفاده نمایند.


● فرم های وب (Web Forms)

با استفاده از تکنولوژی فوق می توان صفحات وب متکی بر فرمهای وب قدرتمندی را ایجاد نمود. در زمان ایجاد صفحاتی از این نوع می توان از کنترل های سرویس دهنده ASP.NETبرای ایجاد عناصر معمولی در طراحی رابط کاربر (UI) و برنامه نویسی آنها برای انجام عملیات خاص استفاده نمود. استفاده از کنترل های سرویس دهنده باعث سرعت در امر پیاده سازی فرم های وب خواهد داشت.


● سرویس های وب XML

این نوع سرویس ها امکان دستیابی به قابلیت ها و پتانسیل های سرویس دهنده را از راه دور فراهم خواهندکرد. با استفاده از سرویس های فوق می توان بخش منطق وسیاست های راهبردی نرم افزارها و همچنین دستیابی به داده ها را مدیریت نمود.

سرویس های وب XML امکان مبادله داده بین سرویس گیرنده و سرویس دهنده و یا بین دو سرویس دهنده را بوجود می آورد. برای تبادل اطلاعات می توان از پروتکل های ارتباطی استانداری نظیر http و یا پیامهای XML استفاده نمود. نکته قابل توجه در رابطه با سرویس های فوق توانائی هر برنامه ( صرفنظر از زبان استفاده شده ) و تحت هر نوع سیستم عامل برای استفاده از سرویس های فوق است.

دو مدل فوق قادر به استفاده از تمامی مزایای تکنولوژی های ASP.NET خواهند بود. بدیهی است استفاده از پتانسیل های محیط دات نت نیز در این زمینه وجود دارد. در ادامه به برخی از این ویژگی های ASP.NET اشاره می گردد.

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

با توجه به مسئله فوق می بایست به این نکته نیز اشاره گردد که ASP.NET با ASP کلاسیک بطور کامل سازگار نبوده و تقریبا» تمامی صفحات ASP موجود مجبور خواهند بود شاهد برخی تغییرات باشند تا امکان اجرای آنان تحت ASP.NET فراهم گردد. یکی دیگر از تغییرات مهم در این زمینه وجود VisualBasic.NET است.

در صفحات ASP فعلی از VBscript استفاده شده است که بنوعی این زبان در دات نت مورد توجه قرار نگرفته و VisualBasic.NET جایگزین شده است. دستیابی به بانک های اطلاعاتی از طریق برنامه های ASP.NET بعنوان یک نیاز اساسی برای اغلب برنامه های تحت وب مورد توجه خاص قرار گرفته است.

در این راستا ASP.NET امکانات بیشتر و به مراتب راحت تر از لحاظ بکارگیری را پیش بینی کرده است و حتی امکان مدیریت بانک اطلاعاتی از طریق کدهای نوشته شده نیز وجود خواهد داشت.

ASP.NET با ارایه یک مدل ساده به پیاده کنندگان نرم افزارهای تحت وب این امکان را خواهد داد که منطق برنامه های خود را نوشته و آنها را در سطح Application اجراء نمایند. کدهای فوق را می توان در یک فایل متنی با نام Global.asax و یا در یک کلاس کمپایل شده که بعنوان یک اسمبلی بکار گرفته می شود استفاده نمود.

ASP.NET امکانات لازم برای دستیابی به و Application State و Session state را ارایه نموده است. برای پیاده کنندگان حرفه ای تر که قصد استفاده از API را دارند (ISAPI رابط برنامه نویسی است که در نسخه قبلی ASP از آن استفاده می گردید) رابط های جدیدتر و کامل تری را با نام و IHttpheandler و IHttpmodule را ارایه نموده است.

ASP.NET از امکانات و پتانسیل های موجود در دات نت و CLR بمنظور افزایش کارائی برنامه ها بخوبی استفاده می نماید. تمامی کدهای ASP.NET ترجمه می گردنند( تفسیر نمی گردند) در ASP.NET می توان ماژول هائی را که ارتباطی با برنامه ندارند حذف نمود ASP.NET . factorable از سرویس های پیشرفته Caching برای افزایش سرعت و کارائی برنامه ها بخوبی استفاده می نماید.

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

اشکال زدائی برنامه های نوشته ASP.NET به کمک دیباگر به راحتی انجام خواهد گرفت. در این حالت می توان با افزودن چندین خط دیباگ در یک صفحه وب نقطه بروز اشکال را بسرعت و بسادگی تشخیص و در نهایت برطرف نمود. ASP.NET در این راستا کلاس جدیدی با نام TraceContext را ارایه نموده که پیاده کنندگان در زمان نوشتن برنامه قادر به درج دستورات خاص دیباگ در برنامه برای ردیابی خطاهای احتمالی خواهند بود.

دستورات فوق صرفا» در زمانی که امکان Tracing فعال شده باشد (برای یک صفحه وب و برای تمام برنامه) اجراء خواهند شد. دات نت و ASP.NET دارای امکانات لازم برای و Authorizaing و Authentication مناسب برای برنامه های تحت وب می باشند. امکانات فوق را می توان بسادگی اضافه و یا با سایر مدل های موجود و مورد نظر جایگزین نمود.

مقادیر مربوط به تنظیمات و پیکربندی برنامه های ASP.NET در فایل های XML ذخیره می گردنند با توجه به ماهیت فایل هائی از این نوع خواندن و نوشتن درون آنها بسادگی انجام خواهد یافت. هر برنامه می تواند دارای یک پیکربندی مجزاء بوده که در ادامه حیات برنامه و با توجه به نیازهای مطرح شده اعمال تغییرات بسادگی انجام خواهد گرفت. برنامه های ASP.NET همانند سایر برنامه های تحت وب از مجموعه ای فایل با نوع های متفاوت و دایرکتوری تشکیل می گردند. این فایل ها می توانند صفحات ASP.NET کنترل های کاربر (User Controls) فایل های سرویس های وب و فایل های تنظیمات و پیکربندی و اسمبلی باشند.

 
LiveZilla Live Help