سوالات زیادی پرسیده می شود که تفاوت بین ASP.NET و ASP.NET Core چیست و برای ساخت اپلیکیشن وب بعدی خود از کدام یک استفاده کنیم.سوال دیگری که مطرح می شود این است که آیا در پروژه های بعدی خود به جای ASP.NET باید از ASP.NET Core استفاده نماییم؟
این مقاله درباره برتری ها و کاستی های هر یک صحبت می کند که احتمالا به شما کمک می کند تا درمورد انتخاب یکی از این دو تصمیم بگیرید.
معماری .NET
خب اول از همه اجازه دهید که نمودار معماری .NET زیر را مرور کنیم.
همانطور که در نمودار بالا مشاهده می کنید، اکوسیستم .NET سه جزء اصلی سطح بالا دارد: .NET Framework، .NET Core و Xamarin. من شخصا فکر می کنم که بخش Xamarin باید زیر بخش .NET Core می بود که احتمالا در آینده نزدیک چنین اتفاقی بیفتد.
.NET Framework برای توسعه اپلیکیشن های ویندوز با استفاده از WPF و Windows Forms و اپلیکیشن های وب با استفاده از ASP.NET MVC استفاده می شود.
.NET Core کتابخانه های UWP و ASP.NET Core را پشتیبانی می نماید. UWP برای ساخت اپلیکیشن های مخصوص Windows 10 و ASP Core برای ساخت اپلیکیشن های وب برای سیستم عامل های ویندوز، لینوکس و مک استفاده می شوند.
ASP.NET Core
انتخاب بین ASP.NET MVC و ASP.NET Core
ASP.NET Core یکی از اجزای کلیدی .NET Core برای ساخت اپلیکیشن های وب با استفاده از ASP.NET می باشد.
Jeff Fritz از مایکروسافت در مقاله خود می نویسد:
“هر دو فریمورک حداقل تا ۴ سال پشتیبانی می شوند. هر دو فریمورک روش کدنویسی MVC را دارند و هر دو از زبان نمونه سازی Razor بسیار مشابهی استفاده می کنند.”
جدول زیر لیستی از نکات کلیدی از مقاله Jeff می باشد.
ویژگی | ASP.NET MVC یا ASP.NET Core |
پایدار و بدون تغییر بودن فریمورک | ASP.NET MVC |
کارایی | ASP.NET Core |
تست و ثابت شده برای یک دهه | ASP.NET MVC |
پیشرو بودن، یادگیری بی وقفه و به روزرسانی ها | ASP.NET Core |
قابل اجرا روی سیستم عامل های مختلف | ASP.NET Core |
پشتیبانی مدل نگه دارنده ویندوز | هر دو |
به اشتراک گذاری اجزا بین پلت فرم های مختلف – وب سرور، مکینتاش، ios، اندروید، Xbox، ویندوز موبایل، ویندوز دسکتاپ، یونیتی | .Net Standard با هر دو |
دانشجویان در مقایسه با برنامه نویسان حرفه ای
برای برنامه نویسان حرفه ای، اگر در حال ساخت یک وب سایت هستید و امروز مجبور به انتخاب هستید، در ادامه چند سناریو داریم:
ASP.NET Core انتخاب بهتری است، اگر شما
- می خواهید اپلیکیشن وب خود را روی سیستم عامل های ویندوز، لینوکس و مکینتاش اجرا نمایید.
- از یادگیری چیزهای جدید هراسی ندارید.
- اگر شما از شکستن و درست کردن اشیا ترسی ندارید، چرا که ASP.NET Core هنوز کامل نیست.
ASP.NET MVC انتخاب بهتری است اگر شما
- نیازی به پشتیبانی چند پلت فرم برای اپلیکیشن وب ندارید.
- نیاز به یک محیط پایدار برای کار کردن دارید.
- زمان انتشار (release) اپلیکیشن شما نزدیک است.
- در حال حاضر روی اپلیکیشن موجودی کار می کنید و به طور عملی در حال توسعه آن هستید.
- در حال حاضر تیمی با متخصصین ASP.NET دارید.
برای دانشجویان، اگر در حال یادگیری هستید و تا سال آینده برنامه ای برای پیوستن به شرکتی را ندارید، ASP.NET Core انتخاب بهتری برای شماست. این انتخاب گزینه های بیشتری را در آینده نزدیک در اختیار شما قرار می دهد.
ما در این مقاله به بررسی ویژگی های ASP.NET Core پرداختیم و اینکه ASP.NET Core چیست ؟
تشکر میکنم برای اماده کردن این مقاله
۸