What is .NET and ASP
.NET
.NET is a free, cross-platform, open source developer platform for building many different types of applications.
With .NET, you can use multiple languages, editors, and libraries to build for web, mobile, desktop, games, and IoT.
Languages
You can write .NET apps in C#, F#, or Visual Basic.
- C# is a simple, modern, object-oriented, and type-safe programming language.
- F# is a cross-platform, open-source, functional programming language for .NET. It also includes object-oriented and imperative programming.
- Visual Basic is an approachable language with a simple syntax for building type-safe, object-oriented apps
Cross Platform
Whether you're working in C#, F#, or Visual Basic, your code will run natively on any compatible OS. Different .NET implementations handle the heavy lifting for you:
- .NET Core is a cross-platform .NET implementation for websites, servers, and console apps on Windows, Linux, and macOS.
- .NET Framework supports websites, services, desktop apps, and more on Windows.
- Xamarin/Mono is a .NET implementation for running apps on all the major mobile operating systems.
One consistent API
.NET Standard is a base set of APIs that are common to all .NET implementations.
Each implementation can also expose additional APIs that are specific to the operating systems it runs on. For example, .NET Framework is a Windows-only .NET implementation that includes APIs for accessing the Windows Registry.
What is .NET Standard?
There are various implementations of .NET. Each implementation allows .NET code to execute in different places—Linux, macOS, Windows, iOS, Android, and many more. .NET Standard is a formal specification of the APIs that are common across all these .NET implementations.
.NET Standard allows libraries to build against the agreed on set of common APIs, ensuring they can be used in any .NET application—mobile, desktop, IoT, web, or anywhere you write .NET code.
.NET Standard versions
.NET Standard is versioned. Each new version adds more APIs. When a library is built against a certain version of .NET Standard, it can run on any .NET implementation that implements that version of .NET Standard (or higher).
Targeting a higher version of .NET Standard allows a library to use more APIs, but means it can only be used on more recent versions of .NET. Targeting a lower version reduces the available APIs, but means the library can run in more places.
.NET is a free, open-source development platform for building many kinds of apps, such as:
- Web apps, web APIs, and microservices
- Serverless functions in the cloud
- Cloud native apps
- Mobile apps
- Desktop apps
- Games
- Internet of Things (IoT)
- Machine learning
- Console apps
- Windows services