آنچه باید در مورد دات نت 5 بدانیم

هفتمین پیش نمایش دات نت 5 (NET.) توسط مایکروسافت با پیشرفت هایی در زمینه های JSON و کامپایلر Ryuhit. دات نت 5 از ادغام فریم ورک دات نت و .NET Core منتشر شد که برای متحد کردن بستر یا پلتفرم .NET در نظر گرفته شده است. این پلتفرم جدید در 10 نوامبر 2020 در دسترس عموم قرار می گیرد.

مایکروسافت گفته بود که NET. 5 در پیش نمایش هفتم تکمیل می شود. اما دو ویژگی تک فایل و ARM زمان بیشتری می برد. این دو ویژگی تا زمان پیش نمایش هشتم کامل می شوند.

اهداف سطح بالا برای NET. 5 شامل یک SDK یکپارچه دات نت، با یک BCL (Base Class Library) در تمام برنامه های دات نت و پشتیبانی از برنامه های محلی (Native) و وب در میان چندین سیستم عامل است. یک اپلیکیشن محلی دات نت 5 از چندین سیستم عامل از جمله ویندوز، لینوکس، اندروید و مک او اس با استفاده از کنترل های محلی این پلتفرم ها پشتیبانی می کند.

اهداف دیگر NET. شامل پشتیبانی از ساخت اپلیکیشن های کلودی (Cloudy) با کارایی بالا، الگوریتم های سریع تر در BCL، پشتیبانی بهتر از کانتینر ها در زمان اجرا و پشتیبانی از HTTP 3 است.

پیش نمایش 7

سایر موارد اضافی و پیشرفت های ذکر شده در پیش نمایش هفتم NET. 5 :

  • JSON API جدید System.text.json این امکان را فراهم می کند تا هنگام Serialize کردن، مقادیر پیش فرض برای property های نوع مقدار را نادیده بگیرد.
  • Garbage collection یا اصطلاحا جمع آوری زباله اکنون با استفاده از روش GetGCMemoryInfo که یک ساختار GCMemoryInfo را بر می گرداند. GCMemoryInfo اطلاعاتی در مورد دستگاه و حافظه هیپ (heap memory) و آخرین جمع آوری را ارائه می دهد. یکی دیگر از تغییرات GC، به تعویق انداختن عملکرد پر هزینه ریست کردن حافظه در شرایط کمبود حافظه است.
  • Ryujit، تولید کننده کد اسمبلی برای .NET ، پیشرفت هایی از جمله امکان استفاده از چک کردن حد و مرز ها، بهبود تکثیر دنباله و بهبود در حذف صفر های اضافی داشته است.

پیش نمایش 6

این پیش نمایش در 25 ژوئن رونمایی شد که در آن، پشتیبانی داخلی از WinRT (مجموعه ای از API ها برای ساخت برنامه های عمومی پلتفرم ویندوز) حذف شده است. برنامه هایی که با NET. core 3 نوشته شده اند، مجددا باید کامپایل شوند. تیم دات نت تلاش کرده است که نحوه تعامل WinRT با ویندوز را تغییر دهند و پشتیبانی از آن را با ابزار C#/WinRT در دات نت 5 جایگزین کنند.

دیگر تغییرات:

  • پشتیبانی از ویندوز فرم ها در دستگاه های ARM64. کار بر روی ادامه پشتیبانی WPF بر روی دستگاه های ARM64 نیز ادامه دارد
  • بهبود کیفیت کد RyuJIT
  • بهبود و بهینه سازی کد ساخته شده برای ARM64
  • بروزرسانی برنامه های پشتیبانی پلتفرم ها

پیش نمایش 5

  • بهبود های در RyuJIT که شامل سرعت بیشتر در کامپایل عبارات با قاعده (Regular Expressions) و همچنین عملکرد بهتر در معماری Intel می شود
  • Export کد های دات نت برای فایل های باینری همراه با فراخوانی Native فعال شده است
  • DirectoryServices.Protocols در لینوکس و MacOS پشتیبانی می شود
  • توزیع لینوکس Alpine 3.12 اکنون پشتیبانی می شود

پیش نمایش 4

  • پشتیبانی از C# 9 و F# 5
  • بهبود عملکرد tailcall های استفاده شده در #F
  • بهبود عملکرد ToUpperInvariant ، string.ToLowerInvariant و الگو های مربوطه
  • بهبود عملکرد HTTP 1.1 و HTTP 2
  • اضافه شدن یک شئ هیپ برای کاهش فرگمنت شدن حافظه هیپ

پیش نمایش 3

  • کلاس BitArray برای مدیریت مقادیری از بیت ها بروزرسانی شده است تا یک اجرای سریعتر سخت افزاری برای ARM64 رخ دهد
  • پشتیبانی از حفظ مرجع هایی (references) که به System.Txt.Json اضافه شده است، این امکان را می دهد تا حلقه مرجع را برای JSON Serialization مدیریت کنید. همچنین کلاس ها و ساختار های تغییر ناپذیر تکنون توسط JsonSerializer پشتیبانی می شود. مدیریت مقدار null نیز پشتیبانی می شود.

پیش نمایش 2

  • تغییراتی در RyuJIT انجام شده است تا کد ماشین تولید شده را بهبود بخشد.

پیش نمایش 1

  • معرفی ASP.NET core ، یک چارچوب متن باز برای برنامه های وب
  • معرفی Enity Framework Core ، تکنولوژی دسترسی به داده ها
  • معرفی WinForms
  • WPF (Windows Presentation Foundation)
  • مدل دستگاه تلفن همراه Xamarin
  • ML.NET
QR:  آنچه باید در مورد دات نت 5 بدانیم
به اشتراک بگذارید