.СЕТЬ


Из Википедии, бесплатной энциклопедии
  (Перенаправлено из CoreCLR )
Перейти к навигации Перейти к поиску

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

История

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

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

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

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

В ноябре 2020 года Microsoft выпустила .NET 5.0. Брендинг «Core» был удален, а версия 4.0 была пропущена, чтобы избежать путаницы с .NET Framework, которая остается продуктом, специфичным для Windows. В нем рассматриваются проблемы с патентами, связанные с .NET Framework. [18]

В ноябре 2021 года Microsoft выпустила .NET 6.0. [19]

.NET Core 2.1 и более поздние версии, включая .NET 5, поддерживают Alpine Linux (Alpine в первую очередь поддерживает и использует musl libc [27] ). [28]

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

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

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

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

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

Архитектура

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

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

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

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

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

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

Талисман

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

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

Примечания

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

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

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

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

  • Ариф, Хаммад; Куреши, Хабиб (2020). Внедрение .NET 5. Ознакомьтесь с современными архитектурами, передовыми методами миграции и новыми функциями .NET 5 . Издательство Пакет. ISBN 978-1800560567.
  • Мецгар, Дастин (2018). .NET Core в действии . Публикации Мэннинга. ISBN 978-1617294273.
  • Прайс, Марк Дж. (2020). C# 9 и .NET 5 — современная кроссплатформенная разработка . Издательство Пакет. ISBN 978-1800568105.
  • Прайс, Марк Дж. (2019). C# 8.0 и .NET Core 3.0 — современная кроссплатформенная разработка . Издательство Пакет. ISBN 978-1788478120.
  • Прайс, Марк Дж. (2017). C# 7.1 и .NET Core 2.0 — современная кроссплатформенная разработка . Издательство Пакет. ISBN 978-1788398077.
  • Прайс, Марк Дж. (2017). C# 7 и .NET Core: современная кроссплатформенная разработка . Издательство Пакет. ISBN 978-1787129559.
  • Прайс, Марк Дж. (2016). C# 6 и .NET Core 1.0: современная кроссплатформенная разработка . Издательство Пакет. ISBN 978-1785285691.
  • Зимарев, Алексей (2019). Практическое проектирование на основе предметной области с помощью .NET Core . Издательство Пакет. ISBN 978-1788834094.

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

  • Официальный сайт
  • Обзор .NET Framework (MSDN)
  • .NET-репозиторий GitHub
Получено с https://en.wikipedia.org/w/index.php?title=.NET&oldid=1088871898#Architecture .