What is .NET ?
.NET is not a programming language, as some people think it is. .NET (pronounced as dot net) is framework that runs mostly on Windows. It does run multiple programming languages and has a native inter-operability across multiple platforms.
.NET suports a lot of programming languages, but the most up to date are C#, F# and Visual Basic. .NET Runtimes implement the CLI that specify independent runtime and language interoperability.
This framework has automatic memory management, using garbage collection to provide it, operating on a lazy approach to memory management.
Microsoft .NET is made with a lot of key components, having a standard library, which is basically a large set of APIs that runs everywhere. There are three runtimes in this standard library:
– .NET Framework (WPF, Windows Forms, ASP.NET)
– .NET Core (UWP, ASP.NET Core)
– Xamarin (iOS, OSX and Android)
.NET Framework is the framework put together more than 15 years ago, being the same .NET framework that .NET developers used. In this type of runtime it implement the .NET Standard Library, but also some extra Windows specific APIs, such as APIs for Windows desktop development with Windows Forms and WPF, being the main framework used for Windows Desktop Applications
.NET Core is a runtime that is used for optimizing the server workloads. It’s the runtime used by ASP.NET Core and UWP, being modern and eficient.
Xamarin or Mono for Xamarin is a runtime used by Xamarin apps, containing APIs for iOS, Android, Xamarin.Forms and Xamarin.MAC. It’s basicaly the runtime used for building mobile apps for iOS and Android.
.NET Framework is a complex type of framework, suporting a lot of programing languages, so it’s not going to be simple to explain all the .NET components and characteristics in one article. However, it’s a popular and required framework to work in, so there are a lot of .NET development teams around the world making use of it.
Maybe next time I’ll talk in more details about C#. We’ll see.