آموزش ASP.NET CORE ؟
Asp.net core یک چارچوب تحت وب و Open Source است که نسل بعدی ASP.NET می باشد و توسط شرکت مایکروسافت و جامعه ی برنامه نویسان طراحی و ایجاد شده است. این یک چارچوب ماژول وار است که هم بر روی .NET و هم بر روی ویندوز قابل اجرا است.
این چارچوب طوری بازنویسی شده است که ASP.NET MVC و API ها را که قبلا جدا بودند با هم در یک مدل برنامه نویسی قرار داده است. با وجود این که فریم ورکی جدید است و بر روی یک پشته داده ای تحت وب ساخته شده هم خوانی زیادی با ASP.NET MVC دارد.
این فریم ورک یک بازنویسی کامل است که ASP.NET MVC و API ASP.NET Web API را به یک مدل برنامه نویسی واحد متصل می کند.
تاریخچه ی نسخ های ارائه شده
نسخه تاریخ ارائه
1.0 15/5/2016
1.1 18/11/201
2.0 14/8/2017
نام گذاری
این برنامه در اصل قرار بود با نام ASP.NET vNEXT ارائه شود ولی بعد قرار شد ASP.NET 5 نام بگیرد. اما برای این که نشان داده شود این بروز رسانی چارچوب ASP.NET را در خود دارد مایکروسافت نهایتا آنرا هسته ی ASP.NET نسخه ی 1.0 نام گذاری کرد.
ویژگی های Asp.net core
-
نیاز به فرمان اجرای مستمر نیست یعی اجرا به شکل مستمر انجام می شود.
-
چارچوب ماژل وار به شکل پکیج های NuGet.
-
زمان اجرا برای کلود برنامه ریزی شده.
-
قابلیت هاستینگ از طریق رابط Open Web که در سیستم های شبکه ای و تنها قابل اجرا است.
-
یک استوری واحد برای ساختن Ui و API تحت وب.
-
یک سیستم محیطی آماده برای کلود.
-
یک مسیر درخواست HTTP روان.
-
ساخت و اجرای برنامه های NET قابل اجرا بر روی بستر های مختلف.
-
نسخه گذاری موازی در هنگام اجرا برای NET.
بخش ها
-
هسته ی ENTITY FRAMEWORK
-
هسته ی هویتی
-
هسته ی MVC
-
هسته ی RAZOR

Asp.net core یک بستر بین سیستمی و سطح بالا است که فریم ورکی اپن سورس برای ساخت برنامه های اینترنتی و مدرن بر مبنای کلود ایجاد می کند. با Asp.net core می توانید :
-
برنامه های تحت وب، برنامه های IOT و نرم افزار های موبایلی بسیازید.
-
از ابزار های کد نویسی محبوب خود بر روی ویندوز ، مک و لینوکس استفاده کنید.
-
بر روی کلود ها داده های خود را پیاده سازی کنید.
-
بروی چهار چوب هایی مثل .NET و هسته ی .NET اجرا کنید.
چرا از ASP.NET CORE استفاده کنیم؟
هزارن برنامه نویس از ASP.NET 4.X برای ساختن برنامه های تحت وب استفاده نموده اند. Asp.net core طراحی محددی از ASP.NET 4.x می باشد که تغییراتی معماری و ساختاری در آن ایجاد شده تا چارچوبی ساده تر و چند منظوره تر داشته باشیم.
-
یک استوری واحد برای ساختن UI تحت وب و API تحت وب.
-
یکپارچه سازی کار های کد نویسی در چارچوب های مختلف و مدرن.
-
یک مسیر درخواست HTTP ساده و با عملکرد بالا.
-
توانایی هاستینگ Iis و Apache و Docker.
-
نسخه سازی هم زمان در هنگامی که NETرا مد نظر بگیرید.
-
ابزار هایی که برنامه نویسی مدرن را ساده تر می کند.
-
توانایی ساخت و اجرا در ویندوز و مک و لینوکس.
-
متن باز و جامعه محور.
هسته یASP.NET تمامی پکیج های NuGet در خود دارد. با استفاده از این پکیج شما می توانید برنامه ی خود را بهینه سازی کنید تا برنامه ی شما استقلال عمل کافی را داشته باشد. در حقیقت، برنامه های هسته ی ASP.NET فقط نیاز به یک پکیج NuGet دارند. مزیت های داشتن یک سطح برنامه های کوچک سرویس دهی کم تر و عملکرد بهتر است.
API و Ui تحت وب را با کمک هسته ی ASP.NETبسازید.
هسته ASP.NET به شما امکان می دهد تا برنامه های تحت وب و API های تحت وب بسازید.
- MVC و یا کنترلر نمای مدل به شما کمک می کند تا API و برنامه های تحت وب خود را ساخته و قابل تست باشند.
- صفحات Razor ( که در این نسخه جدید اند ) یک مدل برنامه نویسی صفحه ای است که ساختن UI تحت وب را راحت تر می کند.
- Razor Mark up یک نحو کاربردی برای صفحه های razor و نمایه های MVC درست می کند.
- پشتیبانی داخلی از فرمت های داده ای مختلف و بحث و تفضیل محتوی که به api های شما اجازه می ده تا بازه ای عظیم از کاربران و مشتریان و دستگاه های موبایلی را مورد هدف قرار بدهید.
- ترکیب مدل داده ها را از درخواست های http تا پارامتر های اجرای برای شما نقشه بردای می کند.
- اعتبار سنجی مدل به شکل خودکار اعتبار سنجی در مست سرور و کلاینت را انجام می دهد.
برنامه نویسی در سمت کلاینت
هسته ASP.NET چارچوب های برنامه نویسی سمت کلاینت را به خوبی و بدون مشکل در خود جای می دهد که شامل angular . react , bootstrap می شوند. برای اطلاعات بیشتر به لینک زیر مراجعه کنید.
https://docs.microsoft.com/en-us/aspnet/core/client-side/index
هسته ی ASP.NET با هدف چارچوب .NET
Asp.net core می تواند چارجوب و یا هسته ی NET. را مورد هدف خود قرار بدهد. برنامه های NET. بین بستر های مختلف قابل انتقال نیستند. فقط در ویندوز اجرا میشوند. هیچ برنامه ای برای حذف پشتیبانی از NET. نیست. به طور کلی هسته ی ASP.NET از کتابخانه های استاندارد NET. درست شده. برنامه هایی که با استاندارد 2.0 Net. نوشته شده اند در تمامی جاهایی که 2.0 Net. پشتیبانی شود قابل اجرا هستند.
چهار تا از مزیت های مهاجرت به هسته ی ASP.NET 2.0
بعد از دیدن تمامی پست ها و پوشش های خبری از ارائه نسخه ی2.0 ASP.NET مطمئنا سوالی که برای همه پیش می آید این است که آیا باید برنامه ی تحت وب خود را به ASP.NET 2.0 منتقل کنیم؟
قلب من به من می گوید جواب بلی است اما عقلم به من می گوید که بستگی دارد.
با وجود این که دلایل زیادی برای انتقال به ASP.NET 2.0 وجود دارد این ها همه بستگی دارد به این که برنامه ی من در چه زبانی نوشته شده است. آیا در Asp.net 1.1 نوشته شده ؟ یا asp.net mvc یا asp.net ؟

مزایای ASP.NET CORE 2.0 :
-
1. عملکرد
مشهود ترین مزیت عملرد است.
یک فن آوری و پیشرفت در بحث برنامه نویسی با خود کد های بهینه و خودکار در زمان اجرا بهمراه می آورد.
بهترین بخش این مزیت آن است که شما نیازی به تغییر کد ها ندارید. خود کامپایلر به شکل طبیعی کد های شما را بهینه می کند و برای سیستم جدید باز نویسی می کند.
-
2. کد های کم تر
با این ویژگی های جدید شما می توانید کد های کم تری بنویسید .
چند نمونه از کد های کم تر به شکل زیر اند »
- LINQ که LOT را از حلقه ی FOR ….NEXT حذف می کند و کد های شما برای نوشتن در حلقه های تکی راحت تر و کم می شود.
- عملگر TERNARY که نیاز به جمله های IF را بر طرف می کند و هم چنین تک خطی می کند.
به یاد داشته باشید این مزیت ها در C# وجود داشته اند اما من این مثال های ساده را برای نشان دادن تغییرات برای کمک به جامعه ی برنامه نویسان ارائه می کنم.
این پیشرفت های زبانی کاربری ساده تری دارند اما یک اشکال دارند.
برنامه نویسی که تغییرات جدید را مورد توجه قرار نمی دهد ممکن است تمایلی به استفاده از LINQ به جای حلقه ی FOR … NEXT نداشته باشد.
-
3. قابلیت نگه داری
وقتی کد های کم تری وجود داشته باشند می توان راحت تر از برنامه نگه داری کرد.
اما , ممکن است نتوانیم براحتی برنامه نویس را متقاعد کنیم که کد های تک خطی بهتر اند اما یک برنامه نیوس کهنه کار متوجه می شود که می توان بهینه سازی کد ها را به این شکل انجام داد.
بروز ماندن با آخرین پیشرفت های زبان های برنامه نویسی همیهش بخشی از کار یک معمار وب و برنامه نویسی مبتدی است.
هیمشه باید بدانید که آخرین تغییرات ایجاد شده در برنامه ها چه هستند.
-
4. اجرا در بستر های مختلف
بله ASP.NET چند بستری است و می تواند در ویندوز و مک و لینوکس اجرا بشود.
این مزیت خاص به شما این توانایی را می دهد تا بر روی بستر های مختلف مانور بدهید . برای مثال با استفاده از Xamarian می توانید که برنامه ی اندرویدی نوشته و از همان منطق برای نوشتن یک برنامه ی ios استفاده کنید.
با توجه به این که کد ها مشابه c# هستند تنها چیزی که باید کد نویسی کنید خود برنامه است. ( اندروید یا ویندوز یا ios)
با استفاده از کتابخانه های استاندارد NET. می توانید از توانایی های بین بستری بهره ببرید. البته PCL ها یا کتابخانه های پورتابل حذف شده اند.