.NET Core چیست؟

اصل این مقاله از سایت C# Corner در این آدرس انتخاب و ویرایش و ترجمه شده است.

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

NET Core شامل یک زمان اجرا، مجموعه ای از کتابخانه ها و یک محیط توسعه است که از چندین زبان برنامه نویسی مانند C#، Visual Basic و F# پشتیبانی می کند. این برنامه برای اجرا بر روی پلتفرم های مختلف از جمله ویندوز، macOS و لینوکس طراحی شده است. می توان از آن برای ساخت طیف گسترده ای از برنامه ها، از جمله برنامه های کاربردی وب، برنامه های کاربردی دسکتاپ و میکروسرویس ها استفاده کرد.

یکی از مزایای کلیدی .NET Core این است که ماژولار است، به این معنی که شما می توانید فقط از اجزای مورد نیاز برای برنامه خود استفاده کنید و آن را سبک تر و سریع تر می کند. علاوه بر این، NET Core شامل بهبودهای عملکردی زیادی نسبت به .NET Framework است، از جمله زمان راه‌اندازی سریع‌تر و استفاده کمتر از حافظه.

تاریخچه NET Core

.NET Core که توسط مایکروسافت توسعه یافته است، تحت مدیریت NET Foundation، یک سازمان غیرانتفاعی منبع باز مدیریت می شود. NET Core به زبان های C# و C++ نوشته شده و تحت مجوز MIT مجوز دارد. اولین نسخه، دات نت Core 1.0، در سال 2016 با عملکرد محدود منتشر شد. .NET Core 2.0 در 14 آگوست 2017 منتشر شد. دو فریمورک کلیدی منتشر شده در این نسخه ASP.NET Core 2.0 و Entity Framework Core 2.0 بودند. نسخه های پایدار بعدی، .NET Core 2.1 و 2.2، در ماه می و دسامبر 2018 منتشر شد.

جدول زیر نقاط عطف اصلی .NET Core را خلاصه می کند:

ersionRelease dateKey features/products
.NET Core 1.06/27/2016The initial release of .NET Core is supported by Visual Studio 2015 Update 3.
.NET Core 1.1.13/7/2017.NET Core Tools 1.0 supported by Visual Studio 2017
.NET Core 2.08/14/2017Visual Studio 2017 15.3, ASP.NET Core 2.0, Entity Framework 2.0
.NET Core 2.15/30/2018ASP.NET Core 2.1, EF Core 2.1
.NET Core 2.212/4/2018ASP.NET Core 2.2, EF Core 2.2
.NET Core 3.0 Preview 33/6/2019Support of ASP.NET Core 3.0, Entity Framework Core 3.0, UWP, Windows Forms, and WPF via Visual Studio 2019.

ویژگی های NET Core

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

NET Core رایگان و منبع باز است.

پلتفرم NET Core رایگان و متن باز است. پروژه کد منبع NET Core در GitHub در دسترس است. هر توسعه دهنده ای می تواند در توسعه NET Core شرکت کند. هزاران توسعه‌دهنده فعال در توسعه NET Core در حال بهبود ویژگی‌ها، اضافه کردن ویژگی‌های جدید، و رفع اشکالات و مشکلات هستند.

یک سازمان غیرانتفاعی مستقل دات نت Core به نام بنیاد دات نت را مدیریت می کند. بیش از 60000 توسعه دهنده و 3700 شرکت در اکوسیستم دات نت مشارکت دارند.

NET Core رایگان است و تحت مجوز MIT و Apache مجوز دارد.

.NET Core چند پلتفرمی است.

NET Core از سیستم عامل های Windows، macOS و Linux پشتیبانی و اجرا می شود. NET Core در معماری از جمله x64، x86 و ARM سازگار است. همان مجموعه ها و کتابخانه ها را می توان وارد کرد و در چندین پلتفرم استفاده کرد. مجموعه ها و کتابخانه ها با استفاده از یکی از زبان های دات نت، C#، VB.NET یا F# ساخته شده اند.

NET Core قابل اشتراک گذاری است.

NET Core از یک مدل API سازگار نوشته شده در NET Standard استفاده می کند که برای همه برنامه های NET مشترک است. یک API یا کتابخانه یکسان را می توان با چندین پلتفرم در چندین زبان استفاده کرد.

NET Core مدرن است.

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

دات نت از ساختارهای زبان مدرن با کمک نسخه 8 سی شارپ پشتیبانی می کند، مانند برنامه نویسی شی گرا و مدولار، ژنریک ها، مجموعه ها، لامبداها، پرس و جوی یکپارچه زبان (LINQ) و برنامه نویسی ناهمزمان که توسعه دهندگان را سازنده می کند.

Visual Studio 2019 و Visual Studio Code دو پیشرفته ترین و مدرن ترین IDE توسعه دهندگان در جهان هستند. هر دو IDE از نیازهای مدرن پشتیبانی می کنند و بر تمیزی، سرعت و بهره وری تمرکز دارند.

NET Core سریع است.

NET Core 3.0 سریع است. در مقایسه با .NET Framework و .NET Core 2.2 و نسخه های قبلی، .NET Core 3.0 بسیار سریع است. NET Core بسیار سریعتر از سایر فریمورک های سمت سرور مانند Java Servlet و Node.js است.

NET Core چیست؟

طبق گزارشی که توسط TechEmpowers منتشر شده است، .NET Core بسیار سریعتر از هر چارچوب دیگری است. معیار TechEmpower چارچوب های برنامه های کاربردی وب را برای کارهایی مانند دسترسی به پایگاه داده برای یک پرس و جو، چندین پرس و جو، شانس، به روز رسانی داده ها، متن ساده و سریال سازی JSON مقایسه می کند.

NET Core سبک است.

NET Core سبک وزن است. .NET Core می تواند inc باشد

در برنامه شما لود شده یا روی یک سرور در کنار کاربر، در سراسر ماشین یا نصب شده است. علاوه بر این، NET Core را می توان در کانتینرهای Docker مستقر کرد.

NET Core دوستانه است.

NET Core از طریق NET Standard با .NET Framework، Xamarin و Mono سازگار است. .NET Core همچنین از کار با چارچوب ها و کتابخانه های مختلف وب مانند React، Angular و JavaScript پشتیبانی می کند. TypeScript یکی از اجزای کلیدی اکوسیستم NET Core و Visual Studio است.

چه نوع برنامه هایی را می توانیم با استفاده از NET Core بسازیم؟

NET Core یک چارچوب توسعه نرم افزار همه منظوره است. این به توسعه دهندگان اجازه می دهد تا انواع نرم افزار از جمله وب، دسکتاپ، موبایل، ابر، بازی، اینترنت اشیا و غیره را بسازند.

NET Core چیست؟

هسته دات نت برای نیازهای چند پلتفرمی مناسب تر است. برنامه‌های NET Core در ویندوز، لینوکس و macOS پشتیبانی می‌شوند. ویرایشگر کد منبع باز محبوب مایکروسافت، Visual Studio Code، در لینوکس و macOS پشتیبانی نمی شود. VS Code از نیازهای مدرن ویرایشگرهای کد، از جمله IntelliSense و اشکال زدایی پشتیبانی می کند. اکثر ویرایشگرهای شخص ثالث، مانند Sublime، Emacs و VI، با NET Core کار می کنند.

برنامه های کاربردی وب

ASP.NET Core جزء اصلی اکوسیستم NET Core است. ASP.NET Core چارچوبی برای ساخت صفحات وب است. ASP.NET Core مبتنی بر معماری MVC است و کتابخانه های رایجی را برای ساخت وب فراهم می کند.

Razor یک چارچوب جدید برای ساخت صفحات وب پویا با استفاده از C# و TypeScript است. Razor یک فناوری تغییر دهنده بازی است که به توسعه دهندگان سی شارپ اجازه می دهد تا برنامه های وب را در سی شارپ بسازند.

سیار

توسعه موبایل یک پیشنهاد کلیدی دات نت است. Xamarin مجموعه ای از ابزارها و کتابخانه ها برای ساخت اپلیکیشن های موبایلی چند پلتفرمی با استفاده از سی شارپ است. Xamarin به توسعه دهندگان اجازه می دهد تا برنامه های بومی iOS، Android، Windows و macOS را بر روی یک پایگاه کد دات نت مشترک بسازند.

برنامه های دسکتاپ

NET Core چارچوب ها و ابزارهای مختلفی را برای ساخت برنامه های دسکتاپ فراهم می کند. Windows Forms، WPF، UWP و Xamarin چهار چارچوب اصلی برای ساخت برنامه های دسکتاپ هستند. NET Core از قابلیت همکاری بین این فریمورک ها نیز پشتیبانی می کند.

Windows Forms یک فناوری برای ساخت برنامه های دسکتاپ ویندوز است. Windows Forms یکی از اولین اجزای دات نت فریم ورک بود.

WPF (Windows Presentation Foundation) یک فناوری جدیدتر برای ساخت برنامه های دسکتاپ ویندوز است. WPF به عنوان بخشی از نسخه دات نت فریم ورک منتشر شد

فناوری UWP بعد از ویندوز 8 منتشر شد. امروزه UWP بالغ شده است. UWP از XAML برای لایه ارائه (UI) و C# به عنوان برنامه نویسی backend استفاده می کند.

میکروسرویس ها و کانتینرها

Microservice ها یک الگوی طراحی جدید هستند که به توسعه دهندگان اجازه می دهد تا ماژول های کوچکی از خدمات نرم افزاری بسازند که می توانند با استفاده از قراردادهای کاملاً تعریف شده با یکدیگر ارتباط برقرار کنند. میکروسرویس ها توسعه، آزمایش و استقرار بخش های جدا شده از برنامه شما را آسان تر می کنند. پس از استقرار، هر میکروسرویس می تواند به طور مستقل در صورت نیاز مقیاس شود. معماری Microservices در NET Core پشتیبانی می‌شود، که به سرویس‌های چند پلتفرمی اجازه می‌دهد تا با .NET Core کار کنند، از جمله سرویس‌های توسعه‌یافته با NET Framework، Java، Ruby یا موارد دیگر.

کانتینرها ماشین های مجازی امروزی هستند. ماژولار بودن، سبک بودن و انعطاف‌پذیری NET Core، استقرار برنامه‌های NET Core را در کانتینرها آسان‌تر می‌کند. کانتینرها شامل یک برنامه و همه فایل‌های پیکربندی و وابستگی‌ها در یک واحد نرم‌افزاری کوچک، مستقل و قابل استقرار هستند. کانتینرها را می توان بر روی هر پلتفرم، ابر، لینوکس و ویندوز مستقر کرد. .NET Core با سرویس Docker و Azure Kubernetes به خوبی کار می کند.

برنامه های ابری

این روزها محبوبیت اپلیکیشن های ابری در حال افزایش است. Azure از همه برنامه های ابری پشتیبانی می کند. برنامه‌های NET Core و C# را می‌توان از طریق Visual Studio 2019 در Azure مستقر کرد.

اینترنت اشیا

اپلیکیشن های اینترنت اشیا در حال رشد هستند. NET Core از توسعه IoT از طریق چارچوب UWP برای دستگاه های IoT دارای Windows 10 IoT Core پشتیبانی می کند. از UWP می توان برای ساخت برنامه هایی استفاده کرد که بر روی اینترنت اشیاء با Raspberry Pi، MinnowBoard MAX، DragonBoard 410c و دیگران کار می کنند.

فراگیری ماشین

یادگیری ماشین یک حوزه رو به رشد برای توسعه دهندگان نرم افزار است.

بازی ها

Unity یکی از محبوب ترین فریم ورک های توسعه بازی است. C# و UWP برای ساخت بازی های موبایل، دسکتاپ، کنسول، تلویزیون، VR، AR و بازی های وب استفاده می شود.

چه چیزی در NET Core 3.0 جدید است؟

آخرین نسخه .NET Core 3.0 به تازگی منتشر شده است. C# 8 و Windows Desktop دو مورد مهم اضافه شده به این نسخه هستند.

سی شارپ 8 آخرین نسخه زبان سی شارپ است. C# 8 بخشی از NET Core است. C# 8 ویژگی های جدیدی از جمله ویژگی های C# 8 را اضافه می کند

Windows Desktop افزودنی جدید به .NET Core 3.0 است که به توسعه دهندگان اجازه می دهد تا برنامه های دسکتاپ ویندوز را با استفاده از Windows Forms، WPF و UWP بسازند.

در اینجا لیستی از سایر ویژگی‌ها و پیشرفت‌ها در NET Core 3.0 آمده است.

استقرار MSIX برای دسکتاپ ویندوز

MSIX یک قالب جدید بسته برنامه ویندوز است. این می تواند برنامه های دسکتاپ دات نت Core 3.0 را در ویندوز 10 مستقر کند.

پشتیبانی سریع داخلی JSON

بهبودهای IEEE ممیز شناور

NET Platform Dependent Intrinsics

پشتیبانی از فایل های اجرایی وابسته به چارچوب

وابستگی های کپی بسازید

عدم بارگیری مونتاژ

Windows Native Interop

TLS 1.3 و OpenSSL 1.1.1 در لینوکس

Cr بهبود یافته

یپتوگرافی

SerialPort برای لینوکس

پشتیبانی از لینوکس ARM64

پشتیبانی GPIO برای Raspberry Pi

دیدگاهتان را بنویسید