Jump to content

Список библиотек и фреймворков .NET

(Перенаправлено с RecursiveExtractor )

Эта статья содержит список библиотек , которые можно использовать в языках .NET . Этим языкам требуется .NET Framework , Mono или .NET , которые обеспечивают основу для разработки программного обеспечения , независимость от платформы, совместимость языков и обширные библиотеки фреймворков. Стандартные библиотеки (включая библиотеку базовых классов ) не включены в эту статью.

Введение

[ редактировать ]

Приложения, созданные с помощью .NET Framework или .NET, запускаются в программной среде, известной как Common Language Runtime (CLR). [1] , виртуальная машина приложения предоставляющая такие службы, как безопасность, управление памятью и обработка исключений . Платформа включает в себя большую библиотеку классов под названием Framework Class Library (FCL).

Благодаря размещенной виртуальной машине разные языки, совместимые с .NET Common Language Infrastructure (CLI), могут работать с одними и теми же структурами данных. Таким образом, эти языки могут использовать FCL и другие библиотеки .NET, которые также написаны на одном из языков, совместимых с CLI. Когда исходный код таких языков компилируется, компилятор генерирует независимый от платформы код на языке Common Intermediate Language (CIL, также называемый байт-кодом ), который хранится в сборках CLI . Когда приложение .NET запускается, JIT- компилятор преобразует CIL-код в машинный код, специфичный для платформы. Для повышения производительности в .NET Framework также включен генератор собственных изображений (NGEN), который выполняет предварительную компиляцию в машинный код.

Эта архитектура обеспечивает совместимость языков . Каждый язык может использовать код, написанный на других языках. Вызовы с одного языка на другой точно такие же, как и в пределах одного языка программирования. Если библиотека написана на одном языке CLI, ее можно использовать на других языках CLI. Более того, приложения, состоящие только из чистых сборок .NET, можно перенести на любую платформу, содержащую реализацию CLI, и запускать на этой платформе. Например, приложения, написанные с использованием .NET, могут работать в Windows, macOS и различных версиях Linux .

Однако приложения .NET или их библиотеки могут зависеть от собственных функций платформы, например COM . Таким образом, независимость приложений .NET от платформы зависит от возможности переноса необходимых собственных библиотек на целевые платформы. В 2019 году части .NET Framework Windows Forms и Windows Presentation Foundation стали открытыми. [2]

.NET-реализации

[ редактировать ]

Существует четыре основных реализации .NET, которые активно разрабатываются и поддерживаются:

  • .NET Framework : исходная реализация .NET, существующая с 2002 года. Хотя выпуск еще не прекращен, Microsoft не планирует выпускать следующую основную версию 5.0. [3]
  • Mono : кроссплатформенная реализация .NET Framework от Ximian , представленная в 2004 году. Она бесплатна и имеет открытый исходный код. Сейчас он разрабатывается Xamarin , дочерней компанией Microsoft.
  • Универсальная платформа Windows (UWP): реализация .NET, используемая для создания приложений UWP . Он предназначен для унификации разработки для различных целевых типов устройств, включая ПК, планшеты, фаблеты, телефоны и Xbox .
  • .NET : кроссплатформенная .NET повторная реализация .NET Framework, представленная в 2016 году и первоначально называвшаяся Core . Это бесплатно и с открытым исходным кодом . .NET заменил .NET Framework выпуском .NET 5. [4]

Каждая реализация .NET включает в себя следующие компоненты:

  • Одна или несколько сред выполнения, например Common Language Runtime (CLR) для .NET Framework и CoreCLR для .NET.
  • Библиотека классов

Стандарт .NET — это набор общих API-интерфейсов , которые реализованы в библиотеке базовых классов любой реализации .NET. Библиотека классов каждой реализации должна реализовывать стандарт .NET, но может также реализовывать дополнительные API. Традиционно приложения .NET ориентированы на определенную версию реализации .NET, например .NET Framework 4.6. [5] [6] Начиная со стандарта .NET Standard, приложение может ориентироваться на версию .NET Standard, а затем его можно использовать (без перекомпиляции) любой реализацией, поддерживающей этот уровень стандарта. Это обеспечивает переносимость между различными реализациями .NET.

В следующей таблице перечислены реализации .NET, соответствующие стандарту .NET, а также номер версии, в которой каждая реализация стала совместимой с данной версией .NET Standard. Например, согласно этой таблице, .NET Core 3.0 была первой версией .NET Core, соответствующей стандарту .NET Standard 2.1. Это означает, что любая версия .NET Core старше 3.0 (например, .NET Core 3.1) также соответствует стандарту .NET Standard 2.1.

Выполнение Версии стандарта .NET [7] [8]
1.0 1.1 1.2 1.3 1.4 1.5 1.6 2.0 2.1
.СЕТЬ 1.0 2.0 3.0
.NET Framework 4.5 4.5 4.5.1 4.6 4.6.1 4.7.2 [а] 4.7.2 [а] 4.7.2 [а] [б]
Мононуклеоз 4.6 5.4 6.2
Xamarin.iOS 10.0 10.14 12.12
Xamarin.Mac 3.0 3.8 5.12
Xamarin.Android 7.0 8.0 9.3
Универсальная платформа Windows 8 [с] 8 [с] 8.1 [с] 10 10 10 в1709 будет объявлено позднее
Единство 2018.1 будет объявлено позднее
Windows Телефон 8.1 [с]
Windows Phone через Silverlight 8 [с]

Веб-фреймворки

[ редактировать ]

ASP.NET, впервые выпущенная в 2002 году, представляет собой платформу серверных веб-приложений с открытым исходным кодом, предназначенную для веб-разработки и создания динамических веб-страниц. Это преемник технологии Microsoft Active Server Pages (ASP), основанной на Common Language Runtime (CLR).

ASP.NET был полностью переписан в 2016 году как модульная веб-платформа вместе с другими платформами, такими как Entity Framework . Переписанная платформа использует новую платформу компилятора .NET с открытым исходным кодом (также известную под кодовым названием «Roslyn») и является кроссплатформенной. Модели программирования ASP.NET MVC , ASP.NET Web API и ASP.NET Web Pages (модель, использующая только страницы Razor ) были объединены в унифицированный MVC 6. [9]

Blazor — это бесплатная веб-платформа с открытым исходным кодом , которая позволяет разработчикам создавать веб-приложения с использованием C# и HTML . Приложения Blazor Server размещаются на сервере ASP.NET Core в формате ASP.NET Razor , а приложения Blazor WebAssembly представляют собой одностраничные приложения , которые перед запуском загружаются в веб-браузер клиента.

Числовые библиотеки

[ редактировать ]

Числовые библиотеки с открытым исходным кодом

[ редактировать ]

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

Это кроссплатформенная библиотека численного анализа и обработки данных с открытым исходным кодом. Он состоит из коллекций алгоритмов, написанных на разных языках программирования (C++, C#, FreePascal, Delphi, VBA) и имеет двойное лицензирование – коммерческое и GPL .

Целью этой библиотеки является предоставление методов и алгоритмов численных вычислений в науке, технике и повседневном использовании. Рассматриваемые темы включают специальные функции, линейную алгебру, вероятностные модели, случайные числа, интерполяцию, интегральные преобразования и многое другое. Лицензия MIT/X11. [10]


Это библиотека для сложных научных вычислений в .NET Framework.

Собственные числовые библиотеки

[ редактировать ]

Это высокопроизводительный типобезопасный набор классов и функций числового массива для общей математики, БПФ и линейной алгебры. Библиотека, разработанная для .NET/Mono, призвана обеспечить 32- и 64-битный синтаксис, подобный сценариям, на C#, элементы управления 2D и 3D графиками и эффективное управление памятью. Он распространяется под GPLv3 или коммерческой лицензией. [10]

Это интегрированный набор элементов управления пользовательского интерфейса и библиотек классов для использования при разработке приложений для испытаний и измерений. Библиотеки классов анализа обеспечивают различную цифровую обработку сигналов, фильтрацию сигналов, генерацию сигналов, обнаружение пиков и другие общие математические функции.

Это библиотека числовых компонентов для платформы .NET, разработанная CenterSpace Software . Он включает в себя классы обработки сигналов (FFT), структуру линейной алгебры (LAPACK & BLAS) и пакет статистики. [10]

3D графика

[ редактировать ]

3D-графика с открытым исходным кодом

[ редактировать ]

Это низкоуровневая привязка C# для OpenGL , OpenGL ES и OpenAL . Он работает на Windows, Linux, Mac OS X, BSD, Android и iOS. Его можно использовать автономно или интегрировать в графический интерфейс.

Это графическая подсистема рендеринга пользовательских интерфейсов, разработанная Microsoft. Он также содержит механизм 3D-рендеринга. Кроме того, интерактивный 2D-контент можно накладывать на 3D-поверхности. [11] [12] Он работает только в операционных системах Windows.

Собственная 3D-графика

[ редактировать ]

Это кроссплатформенный игровой движок, разработанный Unity Technologies. [13] и используется для разработки видеоигр для ПК , консолей , мобильных устройств и веб-сайтов .

Обработка изображений

[ редактировать ]

Это библиотека компьютерного зрения и искусственного интеллекта. [14] [15] Он реализует ряд алгоритмов и фильтров обработки изображений. Он выпущен под лицензией LGPLv3 и частично GPLv3 . Большая часть библиотеки написана на C# и, следовательно, кроссплатформенна. [ нужна ссылка ] Функциональность AForge.NET расширена библиотекой Accord.NET . [16] [17]

Это еще одна библиотека компьютерного зрения и искусственного интеллекта, доступная по лицензии Gnu Lesser General Public License , версия 2.1. В основном он написан на C#.

Графический интерфейс пользователя

[ редактировать ]

Это оболочки C# для базовых библиотек GTK+ и GNOME , написанные на C и доступные в Linux, MacOS и Windows. [18]

Это среда графического интерфейса Microsoft. Исходная реализация Microsoft работает в операционных системах Windows и обеспечивает доступ к общим элементам управления пользовательского интерфейса Windows путем включения API Windows в управляемый код . [19] Альтернативная реализация Mono имеет открытый исходный код и кроссплатформенна (она работает в Windows, Linux, Unix и OS X). Он в основном совместим с исходной реализацией, но не полностью. Библиотека написана на C#, чтобы избежать зависимости от Windows. [20] На мероприятии Microsoft Connect 4 декабря 2018 года Microsoft объявила о выпуске Windows Forms как проекта с открытым исходным кодом на GitHub . [21] Он выпущен под лицензией MIT . Windows Forms стала доступна для проектов, ориентированных на .NET Framework. Однако платформа по-прежнему доступна только на платформе Windows, а неполная реализация WinForms Mono остается единственной кроссплатформенной реализацией. [22] [23]

Это графическая подсистема для рендеринга пользовательских интерфейсов в приложениях Windows от Microsoft. Он основан на DirectX и использует XAML, язык на основе XML, для определения и связывания различных элементов интерфейса. [24] Приложения WPF можно развертывать как отдельные настольные программы или размещать как встроенный объект на веб-сайте. [ нужна ссылка ] На мероприятии Microsoft Connect 4 декабря 2018 года Microsoft объявила о выпуске WPF как проекта с открытым исходным кодом на GitHub . [21] Он выпущен под лицензией MIT . Windows Presentation Foundation стал доступен для проектов, ориентированных на .NET Framework. Однако система по-прежнему доступна только на платформе Windows. [22] [23]

Это набор элементов управления и функций пользовательского интерфейса Microsoft для универсальной платформы Windows (UWP). На мероприятии Microsoft Connect 4 декабря 2018 года Microsoft объявила о выпуске WinUI как проекта с открытым исходным кодом на GitHub . [21] WinUI стал доступен для проектов, ориентированных на .NET Framework. Он выпущен под лицензией MIT . Однако библиотека по-прежнему доступна только на платформе Windows. [22] [23]

Это кроссплатформенный набор инструментов пользовательского интерфейса для разработки собственных пользовательских интерфейсов, которые можно запускать в приложениях macOS, iOS, Android и универсальной платформы Windows. [25] [26] [18]

Это кроссплатформенный набор инструментов пользовательского интерфейса, анонсированный в мае 2020 года, который возник как ответвление Xamarin.Forms и может работать на Android, iOS, Linux, macOS, Tizen и Windows. .NET MAUI будет работать на .NET 6 и более поздних версиях. [27] [28] [29] Исходный код доступен под лицензией MIT License и доступен на GitHub . [28]

Это кроссплатформенный набор инструментов пользовательского интерфейса с открытым исходным кодом для разработки пользовательских интерфейсов, которые можно запускать в Windows, Linux, macOS, iOS, Android и WebAssembly. Исходный код доступен под лицензией MIT License и доступен на GitHub. [30]

Гарантия качества

[ редактировать ]

Это с открытым исходным кодом модульного тестирования платформа для .NET, написанная на C# и, следовательно, кроссплатформенная. Это одна из многих программ семейства xUnit . Лицензировано по лицензии MIT .

Объектно-реляционное отображение

[ редактировать ]

.NET Framework изначально предоставляет утилиты для объектно-реляционного сопоставления. [31] через ADO.NET , часть стека .NET, начиная с версии 1.0. В первые годы разработки .NET появился ряд сторонних объектно-реляционных библиотек, призванных заполнить некоторые очевидные пробелы в платформе. [32] [33] [34] По мере развития платформы добавлялись дополнительные объектно-реляционные инструменты, такие как Entity Framework и LINQ to SQL , оба из которых были представлены в .NET Framework 3.5 . Эти инструменты снизили значимость и популярность сторонних объектно-реляционных библиотек.

Это открытый исходный код [35] Платформа объектно-реляционного сопоставления (ORM) для ADO.NET . Он был частью .NET Framework , но начиная с версии Entity Framework 6 он отделен от .NET Framework.

NHibernate — это объектно-реляционный преобразователь для платформы .NET.

Примечания

[ редактировать ]
  1. ^ Перейти обратно: а б с Nuget ошибочно полагает, что .NET Framework 4.6.1 соответствует .NET Standard версий 1.5–2.0. [7] [8]
  2. ^ Поддержка .NET Standard 2.1 в .NET Framework не планируется.
  3. ^ Перейти обратно: а б с д и Microsoft удалила Windows 8 , Windows 8.1 , Windows Phone 8 и Windows Phone 8.1 из своих таблиц, поскольку они устарели. [36] .NET Foundation удалила только Windows Phone 8.0 и 8.1. [37]
  1. ^ геваррен. «Обзор среды Common Language Runtime (CLR) — .NET» . docs.microsoft.com . Проверено 7 августа 2022 г.
  2. ^ Генсельман, Скотт (4 декабря 2018 г.). «Объявление о том, что WPF, WinForms и WinUI становятся открытым исходным кодом» . Блог Скотта Хансельмана2 .
  3. ^ Ландер, Ричард (6 мая 2019 г.). «Представляем .NET 5» . .NET-блог . Майкрософт .
  4. ^ «Анонс .NET 5.0» . .NET-блог . 10.11.2020 . Проверено 14 марта 2021 г.
  5. ^ Генсельман, Скотт (2 апреля 2012 г.). «Управление версиями и множественный таргетинг .NET. .NET 4.5 представляет собой обновление на месте до .NET 4.0» . Блог Скотта Хансельмана .
  6. ^ «Руководство по мультитаргетингу для инструментов управляемого кода [Мирча]» . Блог команды BCL . Майкрософт . 11 апреля 2012 г.
  7. ^ Перейти обратно: а б «.NET Стандарт» . docs.microsoft.com . Майкрософт .
  8. ^ Перейти обратно: а б «Версии.md» . dotnet/стандартный репозиторий . Фонд .NET. 3 апреля 2019 г.
  9. ^ «Введение в ASP.NET 5 — документация ASP.NET 0.0.1» . asp.net .
  10. ^ Перейти обратно: а б с «Руководство. Математическое и статистическое программирование на F#» . fsharp.org. Архивировано из оригинала 25 апреля 2016 г. Проверено 25 апреля 2016 г.
  11. ^ Представляем Windows Presentation Foundation
  12. ^ «Что нового в WPF 3.5? Пятнадцать интересных функций…» Проверено 14 октября 2007 г. .
  13. ^ Риччителло, Джон (23 октября 2014 г.). «Джон Риччиелло намеревается определить двигатель роста Unity Technologies (интервью)» . VentureBeat (Интервью). Беседовал Дин Такахаши . Проверено 18 января 2015 г.
  14. ^ С.М. Хасан Ахмед; Тодд С Александр; Георгиос Анагностопулос (май 2015 г.). «Распознавание жестов рук в режиме реального времени, статическое и динамическое для взаимодействия человека с компьютером» . Университет Майами . Проверено 26 ноября 2018 г.
  15. ^ Сурадж Верма; Прашант Пиллаи; Йим-Фун Ху (2012). «Разработка системы управления айтрекингом с использованием фреймворка AForge.NET» . Международный журнал технологий и приложений интеллектуальных систем . 11 (3/4). Inderscience Enterprises: 286. doi : 10.1504/IJISTA.2012.052485 . Архивировано из оригинала 26 ноября 2018 г. Проверено 26 ноября 2018 г.
  16. ^ Соуза, Сезар (20 мая 2010 г.). «Accord.NET Framework — расширение AForge.NET» . Архивировано из оригинала 16 ноября 2018 г. Проверено 26 ноября 2018 г.
  17. ^ «Модули фреймворка» . Документация Accord.NET Framework . Архивировано из оригинала 26 ноября 2018 г. Проверено 26 ноября 2018 г.
  18. ^ Перейти обратно: а б Лекс Ли (3 июля 2017 г.). «История о кроссплатформенных платформах пользовательского интерфейса .NET» . 3 июля 2017 года . Архивировано из оригинала 10 января 2019 г. Проверено 26 ноября 2018 г. {{cite web}}: CS1 maint: bot: исходный статус URL неизвестен ( ссылка )
  19. ^ «C# 4.0 выпущен Бартом Де Сметом. Sams Publishing, 4 января 2011 г., глава 5» .
  20. ^ «Инструментарий графического интерфейса» . Моно сайт . 21 апреля 2016 г. Архивировано из оригинала 02 апреля 2016 г. Проверено 21 апреля 2016 г.
  21. ^ Перейти обратно: а б с Галло, Кевин (04 декабря 2018 г.). «Анонс открытого исходного кода WPF, Windows Forms и WinUI на Microsoft Connect(); 2018» . Блог разработчиков Windows. Официальный блог Microsoft . Проверено 9 октября 2021 г.
  22. ^ Перейти обратно: а б с Мартин, Джефф (4 декабря 2018 г.). «Открытые исходные коды Microsoft WPF, WinForms и WinUI» . ИнфоQ . Проверено 6 декабря 2018 г.
  23. ^ Перейти обратно: а б с Генсельман, Скотт (4 декабря 2018 г.). «Объявление о том, что WPF, WinForms и WinUI становятся открытым исходным кодом» . Проверено 6 декабря 2018 г.
  24. ^ Разработка MSDN.NET: WPF: обзор XAML
  25. ^ «Краткий старт Xamarin.Forms» . Документы Майкрософт . Майкрософт . Проверено 26 ноября 2018 г.
  26. ^ Натан Уильямс. «Xamarin.Forms гораздо более способен, чем вы думаете» . АркТач. Архивировано из оригинала 26 ноября 2018 г. Проверено 26 ноября 2018 г.
  27. ^ «Представляем пользовательский интерфейс многоплатформенного приложения .NET» . .NET-блог . 19 мая 2020 г. Проверено 28 мая 2020 г.
  28. ^ Перейти обратно: а б «дотнет/мауи» . Гитхаб . Проверено 28 мая 2020 г.
  29. ^ «Обновления Xamarin из Microsoft Build 2020» . Блог Xamarin . 19 мая 2020 г. Проверено 28 мая 2020 г.
  30. ^ Авалония на GitHub
  31. ^ Эмблер, Скотт. «Сопоставление объектов с реляционными базами данных: подробное сопоставление O/R» . Гибкие данные. Архивировано из оригинала 03.11.2018 . Проверено 3 ноября 2018 г.
  32. ^ Максимович, Зоран (2 ноября 2017 г.). «Сопоставитель Microsoft.NET O/R: выберите свой!» . agile-code.com. Архивировано из оригинала 03.11.2018 . Проверено 3 ноября 2018 г.
  33. ^ «Список ORM, доступных для .NET» . Советы Bala.NET . WordPress. 28 февраля 2014 года . Проверено 3 ноября 2018 г.
  34. ^ «Точечная сеть объектно-реляционного сравнения инструментов» . ВикиВикиВеб. 10 апреля 2014 г. Архивировано из оригинала 03.11.2018 . Проверено 3 ноября 2018 г.
  35. ^ Криль, Пол (20 июля 2012 г.). «Entity Framework с открытым исходным кодом Microsoft» . Инфомир . Проверено 24 июля 2012 г.
  36. ^ «Обновить таблицу .NET Standard (#10697) · dotnet/Docs@619885c» . Гитхаб .
  37. ^ «Удалить устаревшие платформы · dotnet/Standard@8a5b1ff» . Гитхаб .
[ редактировать ]

Общий:

Числовые библиотеки:

Данные:

Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: 8e358c1108f1e4d5189259e674ccbf88__1711558200
URL1:https://arc.ask3.ru/arc/aa/8e/88/8e358c1108f1e4d5189259e674ccbf88.html
Заголовок, (Title) документа по адресу, URL1:
List of .NET libraries and frameworks - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)