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

ASP.NET چیست؟ کاربرد ASP.NET در توسعه وب

ASP.NET یک فریم ورک وب است که توسط مایکروسافت طراحی و توسعه یافته است. برای توسعه وب سایت ها، برنامه های کاربردی وب و خدمات وب استفاده می شود. ادغام فوق العاده ای از HTML ،CSS و جاوا اسکریپت را فراهم می کند. ASP.NET اولین بار در ژانویه 2002 منتشر شد. این زبان بر روی زمان اجرای زبان مشترک (CLR) ساخته شده است و به برنامه نویسان اجازه می دهد تا با استفاده از هر زبان دات نت پشتیبانی شده کد بنویسند. ASP.NET بخشی از Microsoft .NET Framework است. تصویر زیر پشته کامپوننت را نشان می دهد.

ASP.NET چیست؟ کاربرد ASP.NET در توسعه وب

شکل: اجزای فریم ورک دات نت

تاریخچه نسخه های ASP.NET

جدول زیر نسخه ها و ویژگی های موجود در ASP.NET را نشان می دهد:

امکانات

 

نسخه

 

تاریخ

 

توسعه برنامه کاربردی وب شی گرا که از وراثت، چندشکلی و سایر ویژگی های استاندارد OOP پشتیبانی می کند.

 

1.0

16 ژانویه 2002

 

کنترل های موبایل و اعتبار سنجی ورودی خودکار.

 

1.1

24 آوریل 2003

 

کنترل های جدید داده (GridView، FormView، DetailsView)

تکنیک جدید برای دسترسی به داده های اعلامی (کنترل های SqlDataSource، ObjectDataSource، XmlDataSource)

کنترل های ناوبری

صفحات اصلی

کنترل های ورود

تم ها

پوسته ها

بخش های وب

خدمات شخصی سازی

پیش تالیف کامل

تکنیک محلی سازی جدید

پشتیبانی از پردازنده های 64 بیتی

مدل کلاس ارائه دهنده

 

2.0

7 نوامبر 2005

 

Windows Presentation Foundation (WPF)

Windows Workflow Foundation (WWF)

Windows Communication Foundation (WCF) که می تواند از ASP.NET برای میزبانی سرویس ها استفاده کند

Windows CardSpace که از ASP.NET برای نقش های ورود استفاده می کند

3.0

21 نوامبر 2006

 

کنترل های جدید داده (ListView، DataPager)

ASP.NET AJAX به عنوان بخشی از چارچوب گنجانده شده است

پشتیبانی از خط لوله HTTP و فیدهای syndication.

پشتیبانی از WCF برای RSS، JSON، POX و Partial Trust

همه تغییرات دات نت فریم ورک 3.5 مانند LINQ و غیره.

 

3.5

 

19 نوامبر 2007

 

ادغام ASP.NET Dynamic Data

پشتیبانی از کنترل تاریخچه مرورگر در یک برنامه ASP.NET AJAX

امکان ترکیب چندین فایل جاوا اسکریپت در یک فایل برای دانلود کارآمدتر

فضاهای نام جدید System.Web.Abstractions و System.Web.Routing

 

3.5 Service Pack1

 

11 آگوست 2008

 

دو ویژگی جدید اضافه شده در کلاس Page عبارتند از MetaKeyword و MetaDescription.

 

4.0

12 آوریل 2010

 

-----

4.5

15 آگوست 2012

 

بوت استرپ 3.0

Web API 2: OAuth 2.0، بهبودهای OData، CORS

MVC 5: مسیریابی مشخصه، فیلترهای احراز هویت و لغو فیلترها

EF 6

SignalR

OWIN

 

4.5.1

17 اکتبر 2013

 

روش‌های بازرسی و اصلاح هدر HTTP با قابلیت اطمینان بالاتر

روشی جدید برای برنامه ریزی کارهای ناهمزمان کارگر پس زمینه

 

4.5.2

5 مه 2014

 

پشتیبانی از HTTP/2 هنگام اجرا در ویندوز 10

API های غیر همگام با بازگشت کار بیشتر

 

4.6

20 جولای 2015

 

 

ASP.NET سه سبک توسعه برای ایجاد برنامه های کاربردی وب ارائه می دهد:

  • فرم های وب
  • ASP.NET MVC
  • صفحات وب ASP.NET

ASP.NET چیست؟ کاربرد ASP.NET در توسعه وب

فرم های وب

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

ASP.NET MVC

این روشی مبتنی بر الگوهای MVC (کنترل نمای مدل) برای ساخت وب سایت های پویا به ما می دهد. این امکان جداسازی دقیق نگرانی‌ها را فراهم می‌کند و به شما کنترل کامل روی نشانه‌گذاری برای توسعه لذت‌بخش و چابک را می‌دهد. همچنین ویژگی های زیادی را ارائه می دهد که توسعه سریع را برای ایجاد برنامه های کاربردی برجسته امکان پذیر می کند. در فصول بعدی بیشتر به آن خواهیم پرداخت.

صفحات وب ASP.NET

  • برای ایجاد صفحات وب پویا استفاده می شود. این روشی سریع و سبک برای ترکیب کد سرور با HTML فراهم می کند. این به اضافه کردن ویدیو، پیوند به سایت های اجتماعی کمک می کند. همچنین ویژگی‌های دیگری مانند ایجاد سایت‌های زیبا که مطابق با آخرین استانداردهای وب هستند را فراهم می‌کند.
  • همه اینها فریم ورک های پایدار و مجهز هستند. ما می توانیم با هر یک از آنها برنامه های وب ایجاد کنیم. اینها همچنین بر اساس دات نت فریم ورک هستند و عملکردهای اصلی دات نت و ASP.NET را به اشتراک می گذارند.
  • ما می توانیم از هر سبک توسعه ای برای ایجاد برنامه استفاده کنیم. انتخاب سبک به مهارت و تجربه برنامه نویس بستگی دارد.
  • اگرچه هر فریم ورک مستقل از فریم ورک دیگر است، اما می‌توانیم هر یک از آن‌ها را در هر سطحی از برنامه خود ترکیب و استفاده کنیم. به عنوان مثال، برای توسعه ماژول تعامل مشتری، می توانیم از MVC و برای کنترل داده ها، از فرم های وب استفاده کنیم.

 

چرخه عمر صفحه ASP.NET

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

مراحل چرخه عمر صفحه

جدول زیر شامل مراحل چرخه حیات صفحه وب ASP.NET است.

شرح

 

صحنه

 

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

 

درخواست صفحه

 

در این مرحله ویژگی های صفحه مانند Request و Response تنظیم می شوند. نوع Request را نیز تعیین می کند.

 

شروع کنید

 

در این مرحله، ویژگی UniqueID هر کنترل تنظیم می شود. صفحه اصلی به صفحه اعمال می شود.

 

مقداردهی اولیه

 

در طول این مرحله، اگر درخواست صفحه پس‌باز باشد، ویژگی‌های کنترل با اطلاعات بارگذاری می‌شوند.

 

Load

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

 

مدیریت رویداد پس از بازگشت (Postback event handling)

 

قبل از رندر، وضعیت نمایش برای صفحه و همه کنترل‌ها ذخیره می‌شود. در طول مرحله رندر، صفحه متد Render را برای هر کنترل فراخوانی می‌کند و یک متن نویس ارائه می‌کند که خروجی خود را در شی OutputStream از ویژگی Response صفحه می‌نویسد.

 

تفسیر

(Rendering)

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

 

Unload(تخلیه کردن)

یک صفحه درخواستی ابتدا در حافظه سرور بارگذاری می شود و پس از آن پردازش می شود و به bowser ارسال می شود. در نهایت از حافظه سرور تخلیه می شود. ASP.NET روش ها و رویدادهایی را در هر مرحله از چرخه حیات صفحه ارائه می دهد که می توانیم در برنامه خود از آنها استفاده کنیم. در جدول زیر، رویدادها جدول بندی شده اند.

رویدادهای چرخه زندگی یا Life Cycle ASP.NET

استفاده معمولی

 

رویداد صفحه

 

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

 

PreInit

این رویداد پس از راه اندازی اولیه همه کنترل ها رخ می دهد.

ما می توانیم از این رویداد برای خواندن یا مقداردهی اولیه ویژگی های کنترل استفاده کنیم.

 

Init

این رویداد در پایان مرحله اولیه سازی صفحه رخ می دهد.

ما می‌توانیم از این رویداد برای ایجاد تغییراتی در حالت مشاهده استفاده کنیم که می‌خواهیم مطمئن شویم پس از پست‌بک بعدی ادامه دارد.

 

InitComplete

این رویداد قبل از بارگیری داده های پس از ارسال در کنترل ها رخ می دهد.

 

PreLoad

این رویداد برای اولین بار برای صفحه و سپس به صورت بازگشتی برای همه کنترل‌های فرزند مطرح می‌شود.

 

Load

این رویداد برای مدیریت رویدادهای کنترلی خاص مانند رویداد کلیک دکمه کنترل استفاده می شود.

 

کنترل رویداد ها(Control events)

 

این رویداد در پایان مرحله مدیریت رویداد رخ می دهد.

ما می توانیم از این رویداد برای کارهایی استفاده کنید که نیاز به بارگیری تمام کنترل‌های دیگر در صفحه دارند.

 

LoadComplete

این رویداد پس از ایجاد تمام کنترل‌های مورد نیاز برای رندر صفحه توسط شیء صفحه رخ می‌دهد.

 

PreRender

این رویداد پس از اینکه هر کنترل باند داده ای که ویژگی DataSourceID تنظیم شده است، متد DataBind خود را فراخوانی می کند، رخ می دهد.

 

PreRenderComplete

 

پس از ذخیره شدن حالت نمایش و حالت کنترل برای صفحه و برای همه کنترل‌ها، افزایش می‌یابد.

 

SaveStateComplete

این یک رویداد نیست. در عوض، در این مرحله از پردازش، شی Page این متد را روی هر کنترل فراخوانی می کند.

 

Render

این رویداد برای هر کنترل و سپس برای صفحه افزایش می یابد.

 

Unload

 

فرم های وب ASP.NET

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

ما می توانیم از ویژوال استودیو برای ایجاد فرم های وب ASP.NET استفاده کنیم. این یک IDE (محیط توسعه یکپارچه) است که به ما امکان می دهد کنترل های سرور را به فرم های وب بکشیم و رها کنیم. همچنین به ما اجازه می دهد تا ویژگی ها، رویدادها و روش ها را برای کنترل ها تنظیم کنیم. برای نوشتن منطق تجاری، می‌توانیم هر زبان دات‌نت مانند: Visual Basic یا Visual C# را انتخاب کنیم.

فرم های وب از دو جزء تشکیل شده اند: بخش بصری (فایل ASPX) و کد پشت فرم که در یک فایل کلاس جداگانه قرار دارد.

ASP.NET چیست؟ کاربرد ASP.NET در توسعه وب

شکل: این نمودار اجزای ASP.NET را نشان می دهد

هدف اصلی وب فرم ها غلبه بر محدودیت های ASP و جداسازی نمای از منطق برنامه است.

ASP.NET کنترل های مختلفی مانند: کنترل های سرور و کنترل های HTML را برای فرم های وب ارائه می دهد. ما جداول همه این کنترل ها را در زیر داریم.

 

ویژگی های ASP.NET Web Forms

ASP.NET پر از ویژگی است و یک پلتفرم عالی برای ایجاد و توسعه برنامه های وب ارائه می دهد. در اینجا، ما در مورد این ویژگی های فرم های وب بحث می کنیم.

  •     کنترل های سرور
  •     صفحات اصلی
  •     کار با داده ها
  •     عضویت
  •     Client Script و Client Frameworks
  •     مسیریابی
  •     مدیریت دولتی
  •     امنیت
  •     کارایی
  •     رسیدگی به خطا

 

مزایا و معایب ASP.NET

ASP یا Active Server Pages که توسط مایکروسافت توسعه یافته است، یک فناوری برای تسهیل توسعه برنامه های کاربردی وب تعاملی و ساخت وب سایت های غنی و پویا است. یکی از ویژگی های برجسته این فناوری این است که می تواند از هر دو اسکریپت سمت کلاینت و سمت سرور استفاده کند. تا زمانی که توسعه دهنده به طور کامل از C# و VB آگاه باشد، می توانید از این فریم ورک نهایت استفاده را ببرید.

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

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

 اجازه دهید اکنون کمی عمیق تر به مزایا و معایب فریم ورک بپردازیم

مزایا ASP.NET

1) امکان separation concern را فراهم می کند

ASP.NET از معماری MVC پیروی می کند که امکان ورودی، پردازش و خروجی جداگانه برنامه را فراهم می کند. این معماری سه لایه، Model-View- Controller دارای قطعات به هم پیوسته است و می تواند جنبه های توسعه خاصی از برنامه های کاربردی نرم افزار را مدیریت کند.

2) زمان کدنویسی را کاهش می دهد

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

3) شامل برخی از ویژگی های خارج از جعبه است

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

4) جعبه ابزار کلاس جهانی

این فریم ورک با جعبه ابزار فوق العاده غنی از طریق محیط توسعه یکپارچه ویژوال استودیو ارائه می شود. این جعبه ابزار به عنوان یک چارچوب ساختمانی بسیار مهم برای فریم ورک عمل می کند و به توسعه دهنده کمک می کند تا برنامه ها را خیلی سریع ایجاد کند. جعبه ابزار به دلیل ویژگی هایی مانند کشیدن و کشیدن معروف است. سرور drop ویرایش WYSIWYG و استقرار خودکار را کنترل می کند.

5) قدرت و انعطاف پذیری را ارائه می دهد

زبان فریم ورکی مبتنی بر زمان اجرا زبان رایج است، بنابراین همه توسعه دهندگان برنامه های وب می توانند از انعطاف پذیری و قدرت کل پلتفرم لذت ببرند. همچنین مستقل از زبان است، بنابراین می توانید زبان برنامه خود را انتخاب کنید یا حتی برنامه خود را به چندین زبان تقسیم کنید.

معایب ASP.NET

قبل از شروع به کار با فریم ورک، مطمئن شوید که معایب آن را درک کرده اید. این به شما نتایج بهتری می دهد.

1) امنیت

بله، ما امنیت را به عنوان یکی از مزایای فریم ورک ASP.NET  ذکر کردیم. اما ظاهراً باید مراقبت بیشتری برای محافظت از برنامه ها انجام شود.

2) پرهزینه

در مقایسه با جایگزین های منبع باز، ASP.NET گران است، زیرا شما هزینه هایی مانند مجوزهای SQL Server، مجوزهای ویژوال استودیو، مجوزهای سرور ویندوز و غیره دارید. علاوه بر این، نگهداری از فریم ورک بسیار گران است، و ممکن است مجبور باشید از منابع وب سرور بسیار بیشتری نسبت به زبان های دیگر، به عنوان مثال، PHP استفاده کنید. این به تعداد بسیار بیشتری از منابع وب سرور نیاز دارد.

3) مستندات دقیقاً مطابق با استاندارد نیستند

مستندات فریم ورک آنطور که می خواهید خوب نیست و هنگام ساخت برنامه های MVC، ممکن است با مشکلاتی مواجه شوید.

4) هسته ASP.NET به اندازه کافی خوب نیست

کاربران می گویند که هسته ASP.NET هنوز بسیار خام است. برخی از چیزهای اساسی مانند دسترسی به داده ممکن است 100% مورد انتظار را به شما ندهند. بنابراین ممکن است زمانی که برنامه آماده انتشار است بسیار مراقب باشید، ممکن است برخی از کدها کار نکنند.

5) ایجاد تغییرات در برنامه

ممکن است تغییرات در نسخه بعدی برنامه شما کار نکند. آنچه در نسخه فعلی کار می کند، کار می کند، اما در نسخه بعدی، ممکن است مجبور شوید از GitHub کمک بگیرید.

سخن پایانی

در موضوع مقاله ی امروز یعنی ASP.NET چیست؟ کاربرد ASP.NET در توسعه وب به معرفی و بررسی ASP.NET پرداختیم. و به مواردی مانند: ویژگی های ASP.NET، مزایا ومعایب ASP.NET تاریخچه ASP.NET و غیره پرداختیم همچنین شما میتوانید سوالات، انتقادات و پیشنهادات خود را در رابطه با موضوع ASP.NET چیست؟ کاربرد ASP.NET در توسعه وب از قسمت نظرات با کارشناسان وب سایت آموزش برنامه نویسی صعود در میان بگذارید. در صورت تمایل میتوانید صعود را در شبکه های اجتماعی اینستاگرام و تلگرام دنبال کنید.