Movatterモバイル変換


[0]ホーム

URL:


Jump to content
WikipediaThe Free Encyclopedia
Search

List of .NET libraries and frameworks

From Wikipedia, the free encyclopedia
(Redirected fromRecursiveExtractor)

icon
This articleneeds additional citations forverification. Please helpimprove this article byadding citations to reliable sources. Unsourced material may be challenged and removed.
Find sources: "List of .NET libraries and frameworks" – news ·newspapers ·books ·scholar ·JSTOR
(April 2016) (Learn how and when to remove this message)

This article contains a list oflibraries that can be used in.NET languages. These languages require.NET Framework,Mono, or.NET, which provide a basis forsoftware development, platform independence, language interoperability and extensive framework libraries.Standard Libraries (including theBase Class Library) are not included in this article.

Introduction

[edit]

Apps created with .NET Framework or .NET run in a software environment known as theCommon Language Runtime (CLR),[1] anapplication virtual machine that provides services such as security,memory management, andexception handling. The framework includes a large class library calledFramework Class Library (FCL).

Thanks to the hosting virtual machine, differentlanguages that are compliant with the .NET Common Language Infrastructure (CLI) can operate on the same kind of data structures. These languages can therefore use the FCL and other .NET libraries that are also written in one of the CLI compliant languages. When the source code of such languages are compiled, the compiler generates platform-independent code in theCommon Intermediate Language (CIL, also referred to asbytecode), which is stored inCLI assemblies. When a .NET app runs, thejust-in-time compiler (JIT) turns the CIL code into platform-specific machine code. To improve performance, .NET Framework also comes with theNative Image Generator (NGEN), which performs ahead-of-time compilation to machine code.

This architecture provideslanguage interoperability. Each language can use code written in other languages. Calls from one language to another are exactly the same as would be within a single programming language. If a library is written in one CLI language, it can be used in other CLI languages. Moreover, apps that consist only of pure .NET assemblies, can be transferred to any platform that contains an implementation of CLI and run on that platform. For example, apps written using .NET can run on Windows,macOS, and various versions ofLinux.

.NET apps or their libraries, however, may depend on native platform features, e.g.COM. As such, platform independence of .NET apps depends on the ability to transfer necessary native libraries to target platforms. In 2019, theWindows Forms andWindows Presentation Foundation portions of .NET Framework were made open source.[2]

.NET implementations

[edit]

".NET Standard" redirects here. For open specification (technical standard) behind .NET standardized by ISO and ECMA, seeECMA 335.
This section'sfactual accuracy may be compromised due to out-of-date information. Please help update this article to reflect recent events or newly available information.(July 2022)

There are four primary .NET implementations that are actively developed and maintained:

  • .NET Framework: The original .NET implementation that has existed since 2002. While not yet discontinued, Microsoft does not plan on releasing its next major version, 5.0.[3]
  • Mono: A cross-platform implementation of .NET Framework byXimian, introduced in 2004. It is free and open-source. It is now developed byXamarin, a subsidiary of Microsoft.
  • Universal Windows Platform (UWP): An implementation of .NET used for buildingUWP apps. It's designed to unify development for different targeted types of devices, including PCs, tablets, phablets, phones, and theXbox.
  • .NET: Across-platform re-implementation of .NET Framework, introduced in 2016 and initially called.NET Core. It isfree and open-source. .NET superseded .NET Framework with the release of .NET 5.[4]

Each implementation of .NET includes the following components:

The.NET Standard is a set of commonAPIs that are implemented in theBase Class Library of any .NET implementation. The class library of each implementation must implement the .NET Standard, but may also implement additional APIs. Traditionally, .NET apps targeted a certain version of a .NET implementation, e.g. .NET Framework 4.6.[5][6] Starting with the .NET Standard, an app can target a version of the .NET Standard and then it could be used (without recompiling) by any implementation that supports that level of the standard. This enables portability across different .NET implementations.

The following table lists the .NET implementations that adhere to the .NET Standard and the version number at which each implementation became compliant with a given version of .NET Standard. For example, according to this table, .NET Core 3.0 was the first version of .NET Core that adhered to .NET Standard 2.1. This means that any version of .NET Core bigger than 3.0 (e.g. .NET Core 3.1) also adheres to .NET Standard 2.1.

ImplementationVersions of the .NET Standard[7][8][9]
1.01.11.21.31.41.51.62.02.1
.NET1.02.03.0
.NET Framework4.54.54.5.14.64.6.14.7.2[a]4.7.2[a]4.7.2[a][b]
Mono4.65.46.2
Xamarin.iOS10.010.1412.12
Xamarin.Mac3.03.85.12
Xamarin.Android7.08.09.3
Universal Windows Platform8[c]8[c]8.1[c]101010 v1709[d]
Unity2018.12021.2
Windows Phone8.1[c]
Windows Phone, viaSilverlight8[c]

Web frameworks

[edit]

ASP.NET

[edit]

First released in 2002, ASP.NET is an open-source server-side web application framework designed for web development to produce dynamic web pages. It is the successor to Microsoft'sActive Server Pages (ASP) technology, built on theCommon Language Runtime (CLR).

ASP.NET Core

[edit]

ASP.NET was completely rewritten in 2016 as a modular web framework, together with other frameworks likeEntity Framework. The re-written framework uses the new open-source .NET Compiler Platform (also known by its codename "Roslyn") and is cross platform. The programming modelsASP.NET MVC, ASP.NET Web API, and ASP.NET Web Pages (a model using onlyRazor pages) were merged into a unified MVC 6.[10]

Blazor

[edit]

Blazor is afree and open-sourceweb framework that enables developers to createSingle-pageWeb apps usingC# andHTML inASP.NET Razor pages ("components"). Blazor is part of theASP.NET Core framework. Blazor Server apps are hosted on a web server, while Blazor WebAssembly apps are downloaded to the client's web browser before running. In addition, a Blazor Hybrid framework is available with server-based and client-based application components.

Numerical libraries

[edit]
Main article:List of Numerical Libraries for .NET
[icon]
This sectionneeds expansion. You can help byadding to it.(April 2016)

Open-source numerical libraries

[edit]

AForge.NET

[edit]

This is a computer vision and artificial intelligence library. It implements a number of genetic, fuzzy logic and machine learning algorithms with several architectures of artificial neural networks with corresponding training algorithms.

ALGLIB

[edit]

This is a cross-platform open source numerical analysis and data processing library. It consists of algorithm collections written in different programming languages (C++, C#, FreePascal, Delphi, VBA) and has dual licensing – commercial andGPL.

Math.NET Numerics

[edit]

This library aims to provide methods and algorithms for numerical computations in science, engineering and everyday use. Covered topics include special functions, linear algebra, probability models, random numbers, interpolation, integral transforms and more. MIT/X11 license.[11]

Meta.Numerics

[edit]

This is a library for advanced scientific computation in the .NET Framework.

ML.NET

[edit]

This is afree softwaremachine learninglibrary. The preview release of ML.NET included transforms for feature engineering like n-gram creation, and learners to handle binary classification, multi-class classification, and regression tasks. Additional ML tasks like anomaly detection and recommendation systems have since been added, and other approaches like deep learning will be included in future versions.

Proprietary numerical libraries

[edit]

ILNumerics.Net

[edit]

This is a high performance, typesafe numerical array set of classes and functions for general math, FFT and linear algebra. The library, developed for .NET/Mono, aims to provide 32- and 64-bit script-like syntax in C#, 2D & 3D plot controls, and efficient memory management. It is released under GPLv3 or commercial license.[11]

Measurement Studio

[edit]

This is an integrated suite of UI controls and class libraries for use in developing test and measurement applications. The analysis class libraries provide various digital signal processing, signal filtering, signal generation, peak detection, and other general mathematical functionality.

NMath

[edit]

This is a numerical component library for the .NET platform developed byCenterSpace Software. It includes signal processing (FFT) classes, a linear algebra (LAPACK & BLAS) framework, and a statistics package.[11]

3D graphics

[edit]

Open-source 3D graphics

[edit]

Open Toolkit (OpenTK)

[edit]

This is a low-level C# binding forOpenGL,OpenGL ES andOpenAL. It runs on Windows, Linux, Mac OS X, BSD, Android and iOS. It can be used standalone or integrated into a GUI.

Windows Presentation Foundation (WPF)

[edit]

This is a graphical subsystem for rendering user interfaces, developed by Microsoft. It also contains a 3D rendering engine. In addition, interactive 2D content can be overlaid on 3D surfaces natively.[12][13] It only runs on Windows operating systems.

Proprietary 3D graphics

[edit]

Unity

[edit]

This is across-platformgame engine developed byUnity Technologies[14] and used to developvideo games forPC,consoles,mobile devices andwebsites.

Image processing

[edit]

AForge.NET

[edit]

This is a computer vision and artificial intelligence library.[15][16] It implements a number of image processing algorithms and filters. It is released under theLGPLv3 and partlyGPLv3 license. Majority of the library is written in C# and thus cross-platform.[citation needed] Functionality of AForge.NET has been extended by theAccord.NET library.[17][18]

Accord.NET

[edit]

This is another computer vision and artificial intelligence library, available under theGnu Lesser General Public License, version 2.1. It is mainly written in C#.

Graphical user interface

[edit]

Gtk#

[edit]

These are C# wrappers around the underlyingGTK+ andGNOME libraries, written inC and available on Linux, MacOS and Windows.[19]

Windows Forms (WinForms)

[edit]

This is a Microsoft GUI framework. The original Microsoft implementation runs on Windows operating systems and provides access toWindows User Interface Common Controls bywrapping theWindows API inmanaged code.[20] The alternativeMono implementation is open source and cross-platform (it runs on Windows, Linux, Unix and OS X). It is mainly compatible with the original implementation but not completely. The library is written in C# in order to avoid Windows dependence.[21] At the Microsoft Connect event on December 4, 2018,Microsoft announced releasing of Windows Forms as open sourceproject on GitHub.[22] It is released under theMIT License. Windows Forms has become available for projects targeting the.NET framework. However, the framework is still available only on Windows platform and the Mono incomplete implementation of WinForms remains the only cross-platform implementation.[23][24]

Windows Presentation Foundation (WPF)

[edit]

This is a graphical subsystem for rendering user interfaces in Windows-based applications by Microsoft. It is based onDirectX and employs XAML, an XML-based language, to define and link various interface elements.[25] WPF applications can be deployed as standalone desktop programs or hosted as an embedded object in a website.[citation needed] At the Microsoft Connect event on December 4, 2018,Microsoft announced releasing of WPF as open sourceproject on GitHub.[22] It is released under theMIT License. Windows Presentation Foundation has become available for projects targeting the.NET framework. However, the system is still available only on Windows platform.[23][24]

Windows UI Library (WinUI)

[edit]

This is a set of Microsoft UI controls and features for theUniversal Windows Platform (UWP). At the Microsoft Connect event on December 4, 2018,Microsoft announced releasing of WinUI as open sourceproject on GitHub.[22] WinUI has become available for projects targeting the.NET framework. It is released under theMIT License. However, the library is still available only on Windows platform.[23][24]

Xamarin.Forms

[edit]

This is a cross-platform UI toolkit for development of native user interfaces that can be run on macOS, iOS, Android, and Universal Windows Platform apps.[26][27][19]

.NET Multi-platform App UI (.NET MAUI)

[edit]

This is a cross-platform UI toolkit announced in May 2020 that originated as a fork of Xamarin.Forms and that can run on Android, iOS, Linux, macOS, Tizen, and Windows. .NET MAUI will run on.NET 6 and later.[28][29][30] The source code is licensed underMIT License and available onGitHub.[29]

Avalonia

[edit]

This is an open-source cross-platform UI toolkit for development of user interfaces that can be run on Windows, Linux, macOS, iOS, Android, and WebAssembly. The source code is licensed underMIT License and available onGitHub[31]

Quality assurance

[edit]

NUnit

[edit]

This is anopen sourceunit testingframework for .NET, written in C# and thus cross-platform. It is one of many programs in thexUnit family. Licensed underMIT License.

Object–relational mapping

[edit]

.NET Framework natively provides utilities forobject–relational mapping[32] throughADO.NET, a part of the .NET stack since version 1.0. In the earlier years of .NET development, a number of third-party object–relational libraries emerged in order to fill some perceived gaps in the framework.[33][34][35] As the framework evolved, additional object–relational tools were added, such as theEntity Framework andLINQ to SQL, both introduced in.NET Framework 3.5. These tools reduced the significance and popularity of third-party object–relational libraries.

Entity Framework

[edit]

This is an open source[36]object–relational mapping (ORM) framework forADO.NET. It was a part of.NET Framework, but since Entity framework version 6 it is separated from .NET framework.

NHibernate

[edit]

NHibernate is an object–relational mapper for the .NET platform.

Notes

[edit]
  1. ^abcNuget mistakenly believes that .NET Framework 4.6.1 adheres to .NET Standard version 1.5 through 2.0.[7][8]
  2. ^There are no plans for the .NET Framework to support .NET Standard 2.1
  3. ^abcdeMicrosoft has removedWindows 8,Windows 8.1,Windows Phone 8 andWindows Phone 8.1 from its tables, as they are deprecated.[37] .NET Foundation has only removed Windows Phone 8.0 and 8.1.[38]
  4. ^UWP doesn't support .NET Standard 2.1

References

[edit]
  1. ^gewarren."Common Language Runtime (CLR) overview - .NET".docs.microsoft.com. Retrieved2022-08-07.
  2. ^Hanselman, Scott (4 December 2018)."Announcing WPF, WinForms, and WinUI are going Open Source".Scott Hanselman's Blog2.
  3. ^Lander, Richard (6 May 2019)."Introducing .NET 5"..NET Blog.Microsoft.
  4. ^"Announcing .NET 5.0"..NET Blog. 2020-11-10. Retrieved2021-03-14.
  5. ^Hanselman, Scott (2 April 2012).".NET Versioning and Multi-Targeting - .NET 4.5 is an in-place upgrade to .NET 4.0".Scott Hanselman's Blog.
  6. ^"Multi-Targeting Guidelines for Tools for Managed Code [Mircea]".BCL Team Blog.Microsoft. 11 April 2012.
  7. ^ab".NET Standard".Microsoft Learn.Microsoft.
  8. ^ab".NET Standard".dotnet.microsoft.com.Microsoft. Retrieved2025-03-18.
  9. ^Landwerth, Immo (September 15, 2020)."The future of .NET Standard". .NET Blog.Microsoft Developer Blogs. Retrieved2025-03-18.
  10. ^"Introduction to ASP.NET 5 — ASP.NET 0.0.1 documentation".asp.net.
  11. ^abc"Guide - Math and Statistics Programming with F#". fsharp.org. Archived fromthe original on 2016-04-25. Retrieved2016-04-25.
  12. ^Introducing Windows Presentation Foundation
  13. ^"What's New in WPF 3.5? Here's Fifteen Cool Features..." Retrieved2007-10-14.
  14. ^Riccitiello, John (October 23, 2014)."John Riccitiello sets out to identify the engine of growth for Unity Technologies (interview)".VentureBeat (Interview). Interviewed by Dean Takahashi. RetrievedJanuary 18, 2015.
  15. ^S M Hassan Ahmed; Todd C Alexander; Georgios Anagnostopoulos (May 2015)."Real-time, Static and Dynamic Hand Gesture Recognition for Human-Computer Interaction". University of Miami. Retrieved2018-11-26.
  16. ^Suraj Verma; Prashant Pillai; Yim-Fun Hu (2012)."Development of an eye-tracking control system using AForge.NET framework".International Journal of Intelligent Systems Technologies and Applications.11 (3/4). Inderscience Enterprises: 286.doi:10.1504/IJISTA.2012.052485. Archived fromthe original on 2018-11-26. Retrieved2018-11-26.
  17. ^Souza, César (20 May 2010)."Accord.NET Framework – An extension to AForge.NET". Archived fromthe original on 2018-11-16. Retrieved2018-11-26.
  18. ^"Framework Modules".Accord.NET Framework documetation. Archived fromthe original on 2018-11-26. Retrieved2018-11-26.
  19. ^abLex Li (3 July 2017)."The Story About .NET Cross Platform UI Frameworks".3 July 2017. Archived from the original on 2019-01-10. Retrieved2018-11-26.{{cite web}}: CS1 maint: bot: original URL status unknown (link)
  20. ^"C# 4.0 Unleashed By Bart De Smet. Sams Publishing, Jan 4, 2011 Chapter 5".
  21. ^"GUI Toolkits".Mono site. 21 April 2016. Archived fromthe original on 2016-04-02. Retrieved2016-04-21.
  22. ^abcGallo, Kevin (2018-12-04)."Announcing Open Source of WPF, Windows Forms, and WinUI at Microsoft Connect(); 2018". Windows Developer Blog.Official Microsoft Blog. Retrieved2021-10-09.
  23. ^abcMartin, Jeff (4 December 2018)."Microsoft Open Sources WPF, WinForms, and WinUI".InfoQ. Retrieved2018-12-06.
  24. ^abcHanselman, Scott (4 December 2018)."Announcing WPF, WinForms, and WinUI are going Open Source". Retrieved2018-12-06.
  25. ^MSDN.NET Development: WPF: XAML Overview
  26. ^"Xamarin.Forms Quickstart".Microsoft Docs. Microsoft. Retrieved2018-11-26.
  27. ^Nathan Williams."Xamarin.Forms is Much More Capable Than You Think". ArcTouch. Archived fromthe original on 2018-11-26. Retrieved2018-11-26.
  28. ^"Introducing .NET Multi-platform App UI"..NET Blog. 2020-05-19. Retrieved2020-05-28.
  29. ^ab"dotnet/maui".GitHub. Retrieved2020-05-28.
  30. ^"Xamarin Updates From Microsoft Build 2020".Xamarin Blog. 2020-05-19. Retrieved2020-05-28.
  31. ^Avalonia onGitHub
  32. ^Ambler, Scott."Mapping Objects to Relational Databases: O/R Mapping In Detail". Agile Data. Archived fromthe original on 2018-11-03. Retrieved2018-11-03.
  33. ^Maksimovic, Zoran (November 2, 2017)."Microsoft.NET O/R mapper: choose your own!". agile-code.com. Archived fromthe original on 2018-11-03. Retrieved2018-11-03.
  34. ^"List of ORM's available for .NET".Bala.NET Tips. WordPress. February 28, 2014. Retrieved2018-11-03.
  35. ^"Object Relational Tool Comparison Dot Net". WikiWikiWeb. April 10, 2014. Archived fromthe original on 2018-11-03. Retrieved2018-11-03.
  36. ^Krill, Paul (20 July 2012)."Microsoft open-sources Entity Framework".InfoWorld. Retrieved24 July 2012.
  37. ^"Update .NET Standard table (#10697) · dotnet/Docs@619885c".GitHub.
  38. ^"Remove deprecated platforms · dotnet/Standard@8a5b1ff".GitHub.

External links

[edit]

General:

Numerical libraries:

Data:

Implementations
Architecture
Components
Tools
Decompilers
Obfuscators
IDEs
Organizations
Architecture
Components
Implementations
Microsoft
Other
Languages
Major
Other
Comparison
Microsoft development tools
Development
environments
Visual Studio
Others
Languages
APIs and
frameworks
Native
.NET
Device drivers
Database
SQL Server
SQL services
Other
Source control
Testing and
debugging
Delivery
Overview
Software
Applications
Video games
Programming
languages
Frameworks,
development tools
Operating systems
Other
Licenses
Forges
Related
Retrieved from "https://en.wikipedia.org/w/index.php?title=List_of_.NET_libraries_and_frameworks&oldid=1320173834#File_archiving"
Categories:
Hidden categories:

[8]ページ先頭

©2009-2025 Movatter.jp