Microsoft представила .NET 5 с поддержкой Linux и WebAssembly

19.11.2020      22367

10 ноября Microsoft представила новый выпуск платформы .NET 5 с поддержкой Linux, macOS и WebAssembly. Это следующий крупный выпуск .NET Core после 3.1. 

Релиз включает среду выполнения .NET и ASP.NET Core 2. для размещения автономных приложений на серверах Windows, а также модуль ASP.NET Core для IIS, который может быть установлен отдельно на серверах без установки .NET Runtime.

.NET SDK содержит обновленную среду выполнения .NET. При установке SDK загрузка пакетов среды выполнения или ASP.NET Core не требуется.

Улучшения

Некоторые изменения мы уже описывали во время выпуска релиз-кандидата .NET 5.0 (RC2). Это была почти финальная версия, поэтому многие улучшения были перенесены в .NET 5.0:

  • .NET 5.0 уже прошел испытания в бою и в течение нескольких месяцев размещался на dot.net и Bing.com.
  • Производительность многих компонентов значительно улучшена.
  • C# 9 и F# 5 предлагают новые улучшения языка, такие как программы верхнего уровня и записи для C# 9. А F# 5 позволяет использовать интерактивное программирование и повышение производительности для функционального программирования на .NET.
  • Библиотеки .NET имеют повышенную производительность для сериализации Json, регулярных выражений и HTTP. Они также полностью аннотированы на предмет обнуления.
  • Задержка P95 снизилась из-за усовершенствований в GC и многоуровневой компиляции.
  • Платформа расширена на ОС Windows Arm64 и WebAssembly.

.NET не замена

 

 

ASP.NET Core 5.0 основан на .NET 5.0, но сохраняет название «Core», чтобы не путать его с ASP.NET MVC 5. Точно так же Entity Framework Core 5.0 сохраняет название «Core», чтобы отличаться от Entity Framework 5 и 6.

.NET 5.0 не заменяет .NET Standard. При разработке новых приложений можно указать название net5.0 для всех типов проектов, включая библиотеки классов. Для приложений и библиотек .NET 5.0 Moniker net5.0 объединяет и заменяет netcoreapp и netstandardTFM. Однако если вы планируете совместно использовать код между рабочими нагрузками .NET Framework, .NET Core и .NET 5, вы можете сделать это, указав netstandard2.0. 

.NET 5.0 не заменяет .NET Framework, но является основной реализацией .NET в будущем, и .NET Framework 4.x все еще поддерживается.

Перенос следующих технологий из .NET Framework в .NET 5.0 не планируется, но в .NET 5.0 есть альтернативы: ASP.NET Core Blazor или Razor Pages для веб-форм, gRPC и Открытый исходный код CoreWF.

Поддержка

.NET 5.0 имеет схожую матрицу поддержки платформ с .NET Core 3.1 для Windows, macOS и Linux. С .NET Core 3.1 в операционной системе есть возможность перейти на .NET 5.0 в той же версии ОС. Наиболее важным дополнением к .NET 5.0 является Windows Arm64.

.NET 5.0 – это актуальная версия. Создатели планируют поддерживать .NET 5.0 до середины февраля 2022 года. Следующий выпуск .NET 6.0 станет LTS-версией и будет поддерживаться в течение трех лет, как и .NET Core 3.1.

Языки

C# 9 и F# 5 являются частью выпуска .NET 5.0 и включены в .NET 5.0 SDK вместе с Visual Basic. Он содержит улучшения для поддержки Visual Basic Application Framework в .NET Core.

Генераторы исходного кода C# – важная новая функция компилятора C#. Технически они не являются частью C# 9, поскольку не имеют синтаксиса языка. Новые образцы генератора исходного кода C# помогут начать работу с этой функцией. 

Чтобы использовать новый синтаксис C# 9 и целевой .NET 5.0., разработчики обновили репозиторий dotnet/iot. Изменения привели к удалению более 2 тысяч строк кода. Новый синтаксис использует программы верхнего уровня, записи, шаблоны и выражения переключения. Также теперь можно воспользоваться полным набором аннотаций, допускающих значение NULL, в библиотеках .NET. 

C#

Разработчики, пишущие приложения .NET 5, будут иметь доступ к последней версии и функциям C#. .NET 5 работает в паре с C# 9, что привносит в язык много новых функций. Вот несколько основных моментов:

  • Записи: неизменяемые ссылочные типы, которые ведут себя как типы значений и вводят в язык новое ключевое слово «with».
  • Реляционная модель соответствия расширяет возможности сопоставления шаблонов для реляционных операторов, сравнительных оценок и выражений, в том числе логических моделей. Новые ключевые слова «and, or и not».
  • Операторы верхнего уровня: в качестве средства для ускорения принятия и изучения C#. Метод Main можно опустить, и допустимо простое приложение: System.Console.Write("Hello world!");
  • Указатели на функции: языковые конструкции, которые предоставляют следующие коды операций промежуточного языка (IL) – «ldftn и calli».

В дополнение к некоторым из отмеченных новых функций C# генераторы исходного кода находят свое применение в проектах разработчиков. Генераторы исходного кода позволяют проверять программу во время компиляции и создавать дополнительные файлы, которые компилируются вместе с остальной частью кода.

F#

F# – это язык функционального программирования .NET, а с .NET 5 разработчики получают доступ к F# 5. Интерполирование строк в C# и даже JavaScript, F# поддерживает базовую интерполяцию строк:

let name = "David"

let age = 36

let message = $"%s{name} is %d{age} years old."

Помимо базовой строковой интерполяции существует типизированная интерполяция. При типизированной интерполяции данный тип должен соответствовать спецификатору формата.

Это похоже на sprint функцию, которая форматирует строку на основе типобезопасных входных данных.

.NET MAUI

.NET MAUI – это эволюция набирающего популярность инструментария Xamarin.Forms с открытым исходным кодом на GitHub.

.NET MAUI упрощает выбор для разработчиков .NET, предоставляя единый стек, который поддерживает все современные рабочие нагрузки: Android, iOS, macOS и Windows. С .NET MAUI можно создать единый проект для разработчиков, ориентированный на несколько платформ и устройств.

Модель-просмотр-обновление шаблон

Свободный подход к разработке пользовательского интерфейса, вдохновленный «The Elm Architecture», – это модель-представление-обновление или шаблон MVU. MVU поддерживает односторонний поток данных и управление состоянием, а также опыт разработки кода. Это позволяет быстро обновлять пользовательский интерфейс, применяя только необходимые изменения.

Автор:
Обозреватель


Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. Perfolenta 204 19.11.20 22:07 Сейчас в теме
Когда только появилась новость о начале разработки Net 5, было обещано, что WinForms и WPF туда войдут... и они вошли... но только для Windows... печалька...
А еще, так и не сделали AssemblyBuilder.Save, из-за чего многие компиляторы так и не могут быть переведены на Net 5 без серьёзного переписывания... ещё одна печалька... (правда в Net 6 вроде бы теперь обещают это сделать, но это не точно)
А в целом, Net 5 это хороший шаг вперёд...
3. Darklight 32 20.11.20 16:52 Сейчас в теме
(1)Поэтому не спешим пернеходить на .NET 5 - ждём минимум .NET 6 - а скорее даже .NET 7 - только тогда переход более менее завершится - а пока начался именно переходный период - и в него лучше не лезть, тем более со старыми проектами! Но с новыми - поэкспериментировать можно, но, всё же стоит дождаться хотя бы версии 5.1 - а то багов сейчас понаходят ещё "мама не горюй", и новую VS тоже стоит подождать
2. Darklight 32 20.11.20 16:40 Сейчас в теме
Создатели планируют поддерживать .NET 5.0 до середины февраля 2022 года. Следующий выпуск .NET 6.0 станет LTS-версией и будет поддерживаться в течение трех лет

Вот тогда и будем переходит на новый .NET c 4.7 а пока это не более чем новая генерация .NET CORE 3.1

включены в .NET 5.0 SDK вместе с Visual Basic

Странно, вроде бы Мелкомягкие болт забили на Visual Basic - хотя, впрочем, они забили на его развитие, а поддержку оставили - значит будут тянуть его пока в новые платформы .NET

Указатели на функции: языковые конструкции, которые предоставляют следующие коды операций промежуточного языка (IL) – «ldftn и calli».

Наверное самое важное нововведение платформы .NET (вот только в C# 9 как это будет выглядеть - ведь вроде бы функции высшего порядка и функциональные типы отложили до C#10). Конечно, в C# сразу были делегаты - только пользоваться ими не так удобно как функциями высшего порядка и указанием функционального типа по месту применения (без декларации его объявления заранее).
1С НУ ОЧЕНЬ СИЛЬНО НЕХВАТАЕТ ПОДОБНЫХ ВОЗМОЖНОСТЕЙ! Давно ломаю голову как это обойти - но пока выходят только костыли!

Генераторы исходного кода позволяют проверять программу во время компиляции и создавать дополнительные файлы, которые компилируются вместе с остальной частью кода

Тоже важное нововведение. Правда ранее уже была альтернатива - VS T4 - теперь сделали более продвинутые возможности (правда, более продвинутая поддержка будет только после C# 10).
В 1С тоже очень нахватает подобных фишек! Хоть они и VS будут позволять только создавать новый код, но не менять старый! Даже так - было бы здорово иметь в 1С. А если бы ещё и функционал расширений фунций можно было бы применять в основной конфигурации - то вообще лепота была бы!

.NET MAUI упрощает выбор для разработчиков .NET, предоставляя единый стек, который поддерживает все современные рабочие нагрузки: Android, iOS, macOS и Window

Хм... а где же Linux?
SKravchenko; +1 Ответить
Оставьте свое сообщение

См. также

В программу подготовки спортивных программистов вошли бег и скорость печати

Новость ИТ-Новость

Пятничное: в России вступил в силу стандарт подготовки по дисциплине «спортивное программирование». В стандарт вошли требования к физическим показателям спортсменов и скорости набора текста.

16.02.2024    643    VKuser24342747    2       

1

Росстандарт утвердил протокол LoRaWAN для интернета вещей

Новость ИТ-Новость

Федеральное агентство по техническому регулированию и метрологии (Росстандарт) утвердило национальный стандарт протокола LoRaWAN RU, таким образом он получил официальный статус. Технология используется для беспроводной передачи данных между устройствами интернета вещей.

19.01.2024    426    VKuser24342747    0       

2

Новый закон откладывает на год вступление в силу изменений в порядок регистрации на сайтах

Новость Законодательство ИТ-Новость

12 декабря вступил в силу Федеральный закон, меняющий срок, к которому все владельцы сайтов должны внести изменения в порядок авторизации пользователей на сайте. Закон вводит переходный период до 1 января 2025 года.

20.12.2023    607    VKuser24342747    2       

1

Вышло крупное обновление для Android Studio

Новость Мобильные приложения ИТ-Новость

Новая версия Android Studio под номером 2023.1 получила имя Hedgehog. Появились возможности контролировать производительность приложений и управлять подключенными устройствами.

07.12.2023    719    VKuser24342747    2       

3

GitHub опубликовал результаты ежегодного исследования проектов с открытым исходным кодом

Новость GitHub ИТ-Новость

GitHub собрал данные об Open Source проектах в рамках ежегодного исследования Octoverse. Компания изучила географию репозиториев, используемые языки программирования и нейросети, а также активность сообщества.

15.11.2023    487    VKuser24342747    1       

2

Некоммерческие проекты смогут получить бесплатный доступ к GigaChat API

Новость ИТ-компания ИТ-Новость

Компания «Сбер» заявила, что будет бесплатно предоставлять доступ к API нейросети для генерации текста GigaChat для некоммерческих проектов. Однако для них будет ограничено число доступных токенов.

01.11.2023    602    VKuser24342747    2       

3

Состоялся релиз свободной среды разработки Geany 2.0

Новость ИТ-Новость Программист

Вышла новая версия Geany 2.0. Обновление затронуло внешний вид программы, расширило поддержку файлов и сторонних проектов, добавило новые способы работы с кодом.

25.10.2023    691    VKuser24342747    0       

1

Минцифры подготовило критерии по выбору оператора реестра провайдеров хостинга

Новость Минцифры ИТ-Новость Роскомнадзор

Минцифры подготовило проект постановления, которое утверждает требования к организации, претендующей на статус оператора реестра провайдеров хостинга.

25.10.2023    356    VKuser24342747    0       

1

Минцифры составило алгоритм действий для компаний, у которых не работает VPN

Новость Минцифры ИТ-Новость

Минцифры подготовило разъяснения для российских организаций, у которых возникли перебои в работе VPN-сервисов для клиентов и сотрудников из-за блокировки запрещенных ресурсов Роскомнадзором.

24.10.2023    611    VKuser24342747    0       

0

«Сбер» объявила о доступности SberLinux OS Server для российских компаний

Новость Импортозамещение ИТ-Новость

«СберТех», дочерняя компания «Сбера», объявила о предоставлении доступа к собственной серверной операционной системе SberLinux OS Server российским компаниям. ОС включена в реестр отечественного ПО.

20.10.2023    829    VKuser24342747    0       

2

Минцифры внесло изменения в проект правил идентификации клиентов веб-хостингов

Новость Минцифры ИТ-Новость Роскомнадзор

Минцифры подготовило изменения в пакет документов, которые устанавливают новые требования для провайдеров хостинга. Ведомство расширило перечень допустимых методов идентификации клиентов.

18.10.2023    456    VKuser24342747    0       

1

Google выпустила финальную версию Android 14

Новость Android Google ИТ-Новость

Google выпустила новую версию мобильной ОС Android 14. Изменения затронули настройки внешнего вида и безопасности. Были расширены возможности камеры и инструментов для хранения данных.

12.10.2023    672    VKuser24342747    0       

1

Яндекс объявил об открытии исходного кода DataLens

Новость Аналитика ИТ-Новость Яндекс

BI-система Yandex DataLens теперь развивается в опенсорс. Код продукта выложен для всех на GitHub. Любой желающий сможет развернуть DataLens на своем железе и доработать его под свои сценарии применения.

03.10.2023    1370    ЕленаЧерепнева    1       

6

Роскомнадзор создаст реестр хостинг-провайдеров

Новость Минцифры ИТ-Новость Роскомнадзор

Минцифры подготовило несколько проектов постановлений, которые утверждают правила ведения реестра поставщиков хостинг-услуг, а также новые требования к провайдерам.

02.10.2023    561    VKuser24342747    0       

1

«СберТех» представил репозиторий GitVerse с ИИ-помощником для написания кода

Новость Импортозамещение ИТ-Новость Программист

«СберТех» начал прием заявок на тестирование веб-сервиса для публикации ИТ-проектов GitVerse. Платформа подходит для разработки программ с открытым и закрытым кодом.

26.09.2023    766    VKuser24342747    2       

1

ИП и юрлица смогут использовать смартфон для создания и замены электронной подписи

Новость ИТ-Новость ФНС Цифровая подпись

ФНС внесла изменения в правила оформления электронной подписи руководителя организации и ИП. Станет возможным продлевать ее и записывать при помощи мобильного устройства.

18.09.2023    415    VKuser24342747    1       

1

Журнал IEEE Spectrum опубликовал рейтинг популярности языков программирования

Новость ИТ-Новость Языки программирования

Журнал Института инженеров электротехники и электроники IEEE Spectrum подготовил рейтинг самых популярных языков программирования в 2023 году. Статистика разделена на три категории.

01.09.2023    1262    VKuser24342747    4       

2

В бета-версии Microsoft 365 появилась поддержка языка Python для Excel

Новость ИТ-Новость Языки программирования

С помощью библиотек и средств визуализации Python можно будет манипулировать данными Excel, а затем использовать полученные результаты в формулах, диаграммах и сводных таблицах.

28.08.2023    643    VKuser24342747    0       

2

Специалисты Калифорнийского университета установили, что боты справляются с CAPTCHA лучше, чем люди

Новость ИТ-Новость

Международная группа исследователей изучила эффективность тестов CAPTCHA. Ученые пришли к выводу, что технология больше мешает людям, потому что боты научились с ней справляться.

24.08.2023    1141    VKuser24342747    23       

2

Google Chrome начнет поддерживать квантово-устойчивые алгоритмы шифрования

Новость Google Безопасность ИТ-Новость

В версии Google Chrome 116 появится поддержка алгоритмов шифрования, устойчивых к попыткам дешифрации при помощи квантовых вычислений. Технология объединяет преимущества классической и инновационной криптографии.

24.08.2023    466    VKuser24342747    0       

1

В реестр российского ПО включен первый комплекс обработки больших данных

Новость Импортозамещение Минцифры ИТ-Новость Реестр ПО

Минцифры внесло в реестр отечественного ПО программно-аппаратный комплекс «Скала-Р», предназначенный для обработки больших данных. Это первый комплекс с таким функционалом, включенный в перечень.

22.08.2023    452    VKuser24342747    0       

1

Microsoft внедрила новые функции в GitHub Copilot и анонсировала Windows Copilot

Новость GitHub Искусственный интеллект

ИИ-помощник для разработчиков GitHub Copilot теперь не только в реальном времени анализирует код, предлагает варианты для его улучшения и помогает найти решение проблем в разработке, но и  показывает ссылки на репозитории, из которых взят код. 

17.08.2023    1138    VKuser24342747    0       

1

В JetBrains разработали ИИ-помощника для аналитиков данных

Новость Аналитика Искусственный интеллект

JetBrains представила нейросеть Ask AI для онлайн-блокнота Datalore. Виртуальный ассистент способен генерировать код на нескольких языках, предлагать доработки и упрощать процесс аналитики данных. 

16.08.2023    650    VKuser24342747    0       

1

Исследование: ChatGPT дает неправильный ответ на половину вопросов о программировании

Новость Искусственный интеллект ИТ-Новость

Чат-бот OpenAI ошибается в 52% случаев, когда отвечает на вопросы по программированию. Однако делает это так убедительно, что пользователи не замечают ошибки. 

14.08.2023    988    VKuser24342747    5       

3

Минцифры проведет эксперимент по цифровизации «жизненного цикла» госслужащего

Новость Минцифры ИТ-Новость

Минцифры подготовило постановление о проведении эксперимента по внедрению ИТ в управление «жизненным циклом» госслужащего. Ведомство намерено автоматизировать все этапы работы сотрудников госструктур.

04.08.2023    547    VKuser24342747    0       

2