stringtranslate.com

.СЕТЬ

Платформа .NET (произносится как « dot net» ) — это бесплатная управляемая компьютерная программная платформа с открытым исходным кодом для операционных систем Windows , Linux и macOS . [4] Проект в основном разрабатывается сотрудниками Microsoft посредством .NET Foundation и распространяется под лицензией MIT . [3]

История

В конце 1990-х годов Microsoft начала разработку среды выполнения управляемого кода и языка программирования ( C# ), которые она объявила вместе как часть «платформы .NET», с основной средой выполнения и библиотеками программного обеспечения, включающими .NET Framework .

В основе платформы .NET лежит .NET Framework — высокопроизводительная многоязычная среда разработки и выполнения для создания и запуска веб-служб с такими важными функциями, как межъязыковое наследование и отладка. [5]

Вскоре после анонса языка C# на конференции профессиональных разработчиков в 2000 году и появления предварительных версий его программного обеспечения Microsoft начала работу по стандартизации через ECMA для того, что она назвала Common Language Infrastructure . Тем временем компания продолжала разработку и поддержку собственной реализации в качестве проприетарного программного обеспечения с закрытым исходным кодом .

12 ноября 2014 года Microsoft представила .NET Core — кроссплатформенный [ 6] преемник [7] .NET Framework с открытым исходным кодом — и выпустила исходный код для реализации .NET Core CoreCLR , исходный код для «всего [7] .NET Framework». ...] библиотечный стек» для .NET Core, [8] и объявил о принятии традиционной ( «базарной» модели разработки с открытым исходным кодом под управлением .NET Foundation ). Мигель де Икаса описывает .NET Core как «переработанную версию .NET, основанную на упрощенной версии библиотек классов» [9] , а Иммо Ландверт из Microsoft объяснил, что .NET Core станет «фундаментом всех будущих .NET». платформы». На момент объявления первоначальный выпуск проекта .NET Core был оснащен подмножеством исходного кода библиотек и совпал с повторным лицензированием существующего эталонного исходного кода Microsoft .NET без ограничений Ms -RSL . Ландверт признал недостатки ранее выбранной общей лицензии, объяснив, что она сделала кодовое название Rotor «неудачным» для проекта с открытым исходным кодом, разработанного сообществом, поскольку оно не соответствовало критериям лицензии, одобренной Open Source Initiative (OSI). [10] [11] [12]

.NET Core 1.0 был выпущен 27 июня 2016 г. [13] вместе с Microsoft Visual Studio 2015 Update 3, которое позволяет разрабатывать .NET Core. [14] .NET Core 1.0.4 и .NET Core 1.1.1 были выпущены вместе с .NET Core Tools 1.0 и Visual Studio 2017 7 марта 2017 года. [15]

.NET Core 2.0 был выпущен 14 августа 2017 г. вместе с Visual Studio 2017 15.3, ASP.NET Core 2.0 и Entity Framework Core 2.0. [16] .NET Core 2.1 был выпущен 30 мая 2018 г. [17] NET Core 2.2 был выпущен 4 декабря 2018 г. [18]

.NET Core 3 был выпущен 23 сентября 2019 года. [19] NET Core 3 добавляет поддержку разработки настольных приложений для Windows [20] и значительно повышает производительность всей базовой библиотеки.

В ноябре 2020 года Microsoft выпустила .NET 5.0. [21] От брендинга «Core» отказались, а версию 4.0 пропустили, чтобы избежать путаницы с .NET Framework, в последних выпусках которой использовалась версия 4.x для всех значимых выпусков (без исправлений ошибок) с 2010 года.

В нем рассматриваются проблемы патентов , связанные с .NET Framework .

В ноябре 2021 года Microsoft выпустила .NET 6.0, [22], в ноябре 2022 года выпустила .NET 7.0, [23] , а в ноябре 2023 года выпустила .NET 8.0. [24]

Alpine Linux , который в основном поддерживает и использует musl libc, [31] поддерживается начиная с .NET Core 2.1. [32]

Windows Arm64 изначально поддерживается начиная с .NET 5. Раньше .NET на ARM означал приложения, скомпилированные для архитектуры x86 и запускаемые через уровень эмуляции ARM. [30]

Языковая поддержка

.NET использует инфраструктуру общего языка (CLI).

.NET полностью поддерживает C# и F# (и C++/CLI начиная с версии 3.1; включено только в Windows) и поддерживает Visual Basic .NET (для версии 15.5 в .NET Core 5.0.100-preview.4 и некоторых старых версий, поддерживаемых в старой версии). .NET Core). [33]

VB.NET компилируется и запускается на .NET, но начиная с .NET Core 3.1 отдельная среда выполнения Visual Basic не реализована. Первоначально Microsoft объявила, что .NET Core 3 будет включать среду выполнения Visual Basic, но через два года график такой поддержки был обновлен до .NET 5. [34] [35]

Архитектура

.NET поддерживает следующие кросс-платформенные сценарии: веб-приложения ASP.NET Core , приложения командной строки/консоли, библиотеки и приложения универсальной платформы Windows . До .NET Core 3.0 он не реализовывал Windows Forms или Windows Presentation Foundation (WPF), которые отображают стандартный графический интерфейс для настольного программного обеспечения в Windows. [36] Однако, начиная с .NET Core 3, они начали реализовываться вместе с универсальной платформой Windows (UWP). [37] Также возможно писать кроссплатформенные графические приложения с использованием .NET с привязкой к языку GTK# для набора инструментов виджетов GTK .

.NET поддерживает использование пакетов NuGet . В отличие от .NET Framework , которая обслуживается с помощью Центра обновления Windows , .NET раньше полагалась на свой менеджер пакетов для получения обновлений. [36] Однако с декабря 2020 года обновления .NET начали доставляться и через Центр обновления Windows. [38]

Двумя основными компонентами .NET являются CoreCLR и CoreFX, которые сопоставимы со средой Common Language Runtime (CLR) и библиотекой классов Framework (FCL) реализации Common Language Infrastructure (CLI) .NET Framework . [39]

Являясь реализацией системы виртуального выполнения CLI (VES), CoreCLR представляет собой полную среду выполнения и виртуальную машину для управляемого выполнения программ CLI и включает в себя JIT-компилятор под названием RyuJIT. [40] [a] .NET Core также содержит CoreRT, среду выполнения .NET Native, оптимизированную для интеграции в собственные двоичные файлы , скомпилированные AOT . [42]

Являясь реализацией стандартных библиотек CLI , [43] CoreFX использует подмножество API .NET Framework, однако он также поставляется со своими собственными API, которые не являются частью .NET Framework. [36] Для UWP используется вариант библиотеки .NET . [44]

Интерфейс командной строки .NET предлагает точку входа для операционных систем и предоставляет такие услуги разработчика, как компиляция и управление пакетами. [45]

Диаграмма пакета UML иерархии потоков в .NET

.NET МАУИ

Пользовательский интерфейс многоплатформенного приложения .NET ( .NET MAUI , представленный в .NET 6) — это кроссплатформенная среда для создания собственных мобильных и настольных приложений с использованием C# и расширяемого языка разметки приложений (XAML), [46] которая также поддерживает Android и iOS .

Талисман

бот dotnet, талисман сообщества .NET

Официальным талисманом сообщества .NET является бот .NET (стилизованный под «dotnet-bot» или «dotnet-bot»). Бот dotnet служил разработчиком-заполнителем для первоначальной регистрации исходного кода .NET, когда он был открыт. [47] С тех пор он использовался в качестве официального талисмана.

Примечания

  1. ^ Префикс «Рю» — это японское слово, означающее «дракон» (竜, рю ), и является отсылкой к книге « Компиляторы: принципы, методы и инструменты » (широко известной как книга драконов, судя по ранней обложке). а также персонажу из видеоигры Street Fighter . [41]

Рекомендации

  1. ^ Ошибка: невозможно правильно отобразить ссылку. Подробности смотрите в документации .
  2. ^ «.NET 8.0.0, предварительная версия 5 — 13 июня 2023 г.» . Проверено 13 июня 2023 г.
  3. ^ ab "core/LICENSE.TXT". Гитхаб . Проверено 4 июня 2018 г.
  4. ^ «Загрузить .NET Core». microsoft.com . Майкрософт . Проверено 31 октября 2017 г.
  5. ^ «Microsoft представляет первые инструменты разработчика платформы .NET для создания веб-сервисов» . 11 июля 2000 года . Проверено 5 ноября 2023 г.
  6. ^ «.NET Core — будущее .NET». 6 мая 2019 г.
  7. ^ «.NET Framework мертва – да здравствует .NET 5». 7 мая 2019 г.
  8. ^ «Почему компания-разработчик .NET может стать идеальным стимулом | Pangea.ai» . www.pangea.ai . Проверено 8 декабря 2022 г.
  9. ^ де Икаса, Мигель . «Открытые исходные коды Microsoft .NET и Mono». Личный блог Мигеля де Икаса . Проверено 16 ноября 2014 г.
  10. ^ Ландверт, Иммо (12 ноября 2014 г.). «.NET Core имеет открытый исходный код». Блог .NET Framework . Майкрософт . Проверено 30 декабря 2014 г.
  11. ^ "дотнет/corefx". Гитхаб . Проверено 16 ноября 2014 г.
  12. ^ "Microsoft/справочный источник". Гитхаб . Проверено 16 ноября 2014 г.
  13. Брайт, Питер (27 июня 2016 г.). «Выпущен .NET Core 1.0, который теперь официально поддерживается Red Hat». Арс Техника . Конде Наст .
  14. Фоли, Мэри Джо (27 июня 2016 г.). «Microsoft демонстрирует SQL Server и .NET Core в продуктах Red Hat Enterprise Linux». ЗДНет . CBS Интерактив .
  15. ^ «Анонс .NET Core Tools 1.0 | Блог .NET» . Блоги.msdn.microsoft.com. 7 марта 2017 г. Проверено 18 января 2020 г.
  16. ^ ab «Анонс .NET Core 2.0». .NET-блог . Майкрософт. 14 августа 2017 г.
  17. ^ ab «Анонс .NET Core 2.1». .NET-блог . Майкрософт. 30 мая 2018 г.
  18. ^ ab «Анонс .NET Core 2.2». .NET-блог . Майкрософт. 4 декабря 2018 г.
  19. ^ «.NET Core — будущее .NET». .NET-блог . 6 мая 2019 г. Проверено 17 мая 2019 г.
  20. ^ «Что нового в .NET Core 3.0» . .NET-документация . Проверено 30 декабря 2020 г.
  21. ^ «Анонс .NET 5.0» . .NET-блог . 10 ноября 2020 г. . Проверено 21 ноября 2020 г.
  22. ↑ Аб Ландер, Ричард (8 ноября 2021 г.). «Анонсируем .NET 6 — самую быструю .NET на данный момент». .NET-блог . Проверено 6 мая 2022 г.
  23. ↑ Аб Дуглас, Джон (8 ноября 2022 г.). «.NET 7 доступен сегодня». .NET-блог . Проверено 13 января 2024 г.
  24. ↑ аб Сет, Гаурав (14 ноября 2023 г.). «Анонс .NET 8». .NET-блог . Проверено 13 января 2024 г.
  25. ^ «Официальная политика поддержки .NET Core» . .СЕТЬ . Майкрософт.
  26. ^ «Анонс .NET Core 1.0» . .NET-блог . Майкрософт. 27 июня 2016 г.
  27. ^ «Анонс .NET Core 1.1» . .NET-блог . Майкрософт. 16 ноября 2016 г.
  28. ^ «Анонс .NET Core 3.0» . .NET-блог . Майкрософт. 23 сентября 2019 г.
  29. ^ «Анонс .NET Core 3.1» . .NET-блог . Майкрософт. 3 декабря 2019 г.
  30. ^ ab «Анонс .NET 5.0». .NET-блог . Майкрософт. 10 ноября 2020 г.
  31. ^ «Выпущена Alpine 3.10.0 | Alpine Linux» . alpinelinux.org . Проверено 9 июня 2020 г.
  32. ^ "дотнет/ядро". Гитхаб . Проверено 9 июня 2020 г.
  33. ^ «.NET Framework поддерживает разные языки программирования» . Проверено 21 апреля 2022 г.
  34. ^ «Visual Basic в .NET Core 3.0 | Блог Visual Basic» . Блоги.msdn.microsoft.com. 12 октября 2019 г. . Проверено 18 января 2020 г.
  35. ^ «Поддержка Visual Basic запланирована для .NET 5.0 | Блог Visual Basic» . Блоги.msdn.microsoft.com. 11 марта 2020 г. Проверено 26 августа 2020 г.
  36. ^ abc Картер, Филипп; Кнежевич, Златко (апрель 2016 г.). «.NET Core — .NET становится кроссплатформенным с .NET Core». Журнал MSDN . Майкрософт .
  37. Ландер, Рич (7 мая 2018 г.). «.NET Core 3 и поддержка настольных приложений Windows». MSDN . Майкрософт .
  38. ^ «Обновления .NET Core 2.1, 3.1 и .NET 5.0 поступят в Центр обновления Microsoft» . .NET-блог . 3 декабря 2020 г. . Проверено 15 декабря 2020 г.
  39. ^ «Понимание .NET Framework, .NET Core, .NET Standard и будущего .NET». www.c-sharpcorner.com . Проверено 1 февраля 2021 г.
  40. ^ Ландверт, Иммо (3 февраля 2015 г.). «CoreCLR теперь является открытым исходным кодом». Блог .NET Framework . Майкрософт . Проверено 27 февраля 2015 г.
  41. ^ «Почему RyuJIT? Как было выбрано имя?». Блог группы разработчиков nuWave eSolutions . 25 ноября 2014 года . Проверено 21 июня 2016 г.
  42. Рамель, Дэвид (31 августа 2020 г.). «Опрос Microsoft: разработчиков сдерживает отсутствие «родного AOT» в .NET Core -». Журнал Visual Studio . Архивировано из оригинала 22 октября 2020 года . Проверено 1 февраля 2021 г.
  43. Ландверт, Иммо (4 декабря 2014 г.). «Представляем .NET Core». Блог .NET Framework . Майкрософт . Проверено 27 февраля 2015 г.
  44. ^ «Введение в .NET Native и CoreRT». Гитхаб . 23 апреля 2016 г.
  45. ^ «Введение в CLI». Гитхаб . 23 апреля 2016 г.
  46. ^ «Что такое .NET MAUI? - .NET MAUI» . Learn.microsoft.com . Проверено 8 ноября 2022 г.
  47. Ван, Абель (9 сентября 2020 г.). Что такое дотнет-бот? (Подкаст). Майкрософт. Событие происходит через 4 секунды в . Проверено 9 марта 2021 г.

48. Различия между .NET Framework и .NET Core www.techieclues.com

49. .NET 9.0.0-preview.2 теперь доступна dotnet.microsoft.com

дальнейшее чтение

Внешние ссылки