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

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

19.11.2020     

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 поддерживает односторонний поток данных и управление состоянием, а также опыт разработки кода. Это позволяет быстро обновлять пользовательский интерфейс, применяя только необходимые изменения.


Источник: https://infostart.ru/journal/news/tekhnologii/microsoft-predstavila-net-5-s-podderzhkoy-linux-i-webassembly_1329473/
Автор:
Сергей Кравченко Обозреватель


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

См. также

В ближайшие годы возрастет потребность в персонале центров обработки данных

Новость Дата-центры ИТ-новость Цифровая экономика

Согласно отчету Uptime Institute, количество сотрудников, необходимых для обеспечения работы ЦОД, вырастет с 2 млн. в 2019 году до 2,3 млн. в 2025 году.

вчера в 15:30    1562    SKravchenko    0       

Google кардинально изменит дизайн Android 12

Новость Android Google ИТ-новость Мобильные приложения Новости компаний

Компания Google анонсировала глобальное обновление популярной операционной системы Android. Новая версия выйдет под номером 12. Говорят, что Android 12 назовут «Snow cone» – летний десерт из сладкого колотого льда.

вчера в 14:05    1784    mouse187    0       

Google представила новый сервис для поиска уязвимостей в открытом ПО

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

Компания Google запустила платформу с открытым исходным кодом OSV (Open Source Vulnerabilities). Она создана для поиска и закрытия уязвимостей в свободном ПО.

18.02.2021    1239    user1015646    0       

Отечественная компания представила сервер приложений Java EE

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

Российская компания Bellsoft представила отечественный аналог сервера Oracle и IBM для JavaEE. Раньше продукт на базе открытого кода был доступен только для некоторых клиентов организации.

17.02.2021    2318    VKuser24342747    4       

Rustоманы из Долины: Google, Microsoft, Huawei, Mozilla и AWS основали фонд поддержки языка программирования

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

Rust – перспективный язык, который широко применяется в разработке операционных систем и высоконагруженных веб-сервисов. Rust Foundation будет заниматься поддержкой и развитием языка.

16.02.2021    1571    user1015646    0       

В Microsoft Teams появилась платформа для общения и обучения

Новость Интернет ИТ-новость Мессенджеры Новости компаний

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

15.02.2021    3138    user1015646    0       

Google рассказала, как защищает Android от взломов

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

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

12.02.2021    1859    SKravchenko    0       

Для регионов разработают приложение онлайн-записи на прием к врачам

Новость ИТ-новость Медицина Минкомсвязь Цифровая экономика

О возможностях приложения рассказали в Минздраве и Минцифре.

10.02.2021    1637    Senator_I    2       

Google разработает новую мобильную ОС

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

Корпорация Google создаст мобильную операционную систему для повышения безопасности использования устройств. Проект запущен под рабочим названием microdroid.

09.02.2021    2089    user1015646    0       

Google закрывает собственную игровую студию Stadia

Новость Google Видеоигры ИТ-новость Новости компаний

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

09.02.2021    1416    SKravchenko    0       

Google представила технологию для замены cookies

Новость Google Интернет ИТ-новость

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

09.02.2021    1217    user1015646    0       

Украинская команда FireWay одержала победу в хакатоне NASA Space Apps Challenge 2020

Новость ИТ-новость Стартапы

Украинская команда FireWay из Днепра стала победителем международного хакатона NASA Space Apps Challenge. Их изобретение было описано как «решение, которое демонстрирует наиболее инновационное использование технологии».

05.02.2021    1881    SKravchenko    2       

Китайцы разработали целых две альтернативы Flash

Новость Интернет ИТ-новость

Китайцам пришлось разработать собственную технологию ReFla взамен Flash для предотвращения сбоев в работе систем. Также они выпустили доработанную версию Flash Player с кодом 34.0.0.92.

04.02.2021    1986    mouse187    4       

Популярные дистрибутивы Linux могут лишиться поддержки Chromium

Новость Linux Google Интернет ИТ-новость

Из дистрибутивов Arch Linux, Fedora, Debian, Slackware и openSUSE может исчезнуть поддержка браузеров на движке Chromium. Причина – жесткие правила Google, из-за которых возникли проблемы с синхронизацией данных.

03.02.2021    2288    user1015646    3       

Microsoft участвует в разработке цифрового паспорта вакцинации от Covid-19

Новость ИТ-новость Медицина

Крупнейшие корпорации из сектора здравоохранения и ИТ-гиганты, такие как Microsoft, Salesforce и другие, объединились для создания цифровых идентификационных карт, которые подтверждают статус вакцинации против Covid-19.

02.02.2021    1695    capitan    3       

Что нового в Chrome 88: проверка надежности паролей и поддержка профилей

Новость Google Интернет ИТ-новость

Компания Google представила новый релиз браузера Chrome и обновила движок Chromium. Теперь ПО будет предупреждать о небезопасных паролях, а пользователь сможет создать привязанный к учетной записи профиль для персонализации работы в сети.

01.02.2021    2147    user1015646    0       

280 символов для науки: Twitter откроет доступ ученым к архиву твитов

Новость ИТ-новость Соцсети

Twitter предоставит академическим исследователям социальных сетей бесплатный доступ почти ко всем твитам. Исключение площадка сделает только для заблокированных аккаунтов.

29.01.2021    1435    VKuser24342747    1       

Отключение Flash на сутки лишило город железнодорожных служб

Новость Интернет ИТ-новость

Прекращение поддержки Flash парализовало работу железнодорожной сети китайского города-миллионника. Организация проигнорировала предупреждения Adobe о грядущем отключении технологии.

29.01.2021    1783    VKuser24342747    1       

Amazon представил форк Elasticsearch с открытым исходным кодом

Новость ИТ-новость Новости компаний Облачные технологии

Компания Amazon намерена развивать собственную версию решения для поиска, хранения и анализа данных Elasticsearch. Форк можно будет использовать в проектах с открытым исходным кодом.

28.01.2021    2201    user1015646    0       

Наниматели назвали самые востребованные языки программирования

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

Компания по обучению программистов CodinGame составила рейтинг самых востребованных языков программирования среди нанимателей. Для этого организация опросила 15 тыс. разработчиков и менеджеров по персоналу.

27.01.2021    2401    SKravchenko    1       

Вышел новый мировой стандарт Wi-Fi 6E. В России он не доступен

Новость ИТ-новость Телекоммуникации

В мире стартовало лицензирование и распространение устройств для работы с новым стандартом беспроводных сетей Wi-Fi 6E. В России стандарт не будет поддерживаться, поскольку частота в 6 ГГц уже занята.

26.01.2021    1979    user-programmist    2       

CES 2021: главные анонсы первой технологической выставки года

Новость Инновации ИТ-новость Микроэлектроника

CES (Consumer Electronics Show) в Лас-Вегасе традиционно открывает год на мировом рынке технологий. Из-за ограничений, связанных с пандемией, выставку провели онлайн, но это не помешало производителям представить интересные новинки.

25.01.2021    2450    user1015646    2       

Представлен GitLab 13.7: автооткат при сбоях и улучшенная проверка мердж-реквестов

Новость git Автоматизация ИТ-новость Новости компаний

Компания GitLab выпустила новый релиз платформы для работы с Git-репозиториями. В GitLab 13.7 добавили 45 новых функций, в том числе автоматический откат при сбоях и инструмент проверяющих для запросов на слияние.

22.01.2021    2315    user1015646    0       

Red Hat заменит CentOS бесплатной Red Hat Enterprise Linux

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

Red Hat в декабре объявила о прекращении поддержки CentOS 8 в 2021 году. Это вызвало волну негодования среди разработчиков, но теперь всё встало на свои места: компания представила бесплатные версии Red Hat Enterprise Linux для команд.

21.01.2021    3014    user1015646    0       

Российские исследователи представили новый фреймворк для работы с большими данными

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

Специалисты Национального центра когнитивных разработок ИТМО представили платформу, которая упростит создание моделей технологических и бизнес-процессов. Она поможет принимать эффективные управленческие решения в условиях отсутствия полных данных.

21.01.2021    2283    user1015646    2