A brief overview of .NET Core
.NET Core is a new version of the .NET Framework, which is a free, open-source software development platform maintained by Microsoft. The framework runs on all major platforms, including Windows, macOS, and Linux.
The .NET Core Framework is ideal for building mobile, desktop, web, cloud, IoT, machine learning, microservices, and games.
As a modular, lightweight, fast, and cross-platform framework, .NET Core was built from scratch. The installer includes the core components needed to run a basic .NET Core application. The .NET Core applications speed up the performance, reduce the memory footprint, and become easier to maintain through NuGet packages, which can be added to your application as needed.
It is a high-performance, cross-platform, open-source framework for developing modern, cloud-enabled, Internet-connected applications. ASP.NET Core offers a variety of features:
- Provide web apps and services, Internet of Things (IoT) apps, and mobile backends.
- Take advantage of your favorite development tools on Windows, macOS, and Linux.
- The application can be deployed in the cloud or on-premises.
- Run-on .NET Core.
.NET Core Characteristics
A Microsoft open-source framework, .NET Core is available for download on GitHub under the MIT license and the Apache 2 license. It is a .NET Foundation project.
The following GitHub repositories provide access to the source code. You can download it, or you can contribute to it.
- Language compiler platform Roslyn: https://github.com/dotnet/roslyn
- NET Core runtime: https://github.com/dotnet/runtime
- .NET Core SDK repository: https://github.com/dotnet/sdk
- ASP.NET Core repository: https://github.com/dotnet/aspnetcore
Cross-platform
.NET Core can be run on Windows, Mac OS, and Linux operating systems. Each operating system has its own runtime that executes the code.
Architectures
Run the code using the same behavior on any of the three major architectures, including x64, x86, and ARM.
Application range
The .NET Core platform allows the development and deployment of various types of applications, including mobile, desktop, web, cloud, IoT, machine learning, microservices, and games.
Multilanguage support
If you want to develop .NET Core applications using C# or F# and Visual Basic, you can use Visual Studio 2017/2019, Visual Studio Code, Sublime Text, Vim, etc.
CLI Tools
.NET Core includes CLI tools (Command-line interface) for development and continuous integration.
Flexible Deployment
Docker containers are another option for deploying .NET Core applications.
Compatibility
By using .NET Standard specifications, the library is compatible with .NET Framework and Mono APIs.
Why choose ASP.NET Core?
There are almost a million developers using or working on ASP.NET 4.x to develop web applications. ASP.NET Core is a redesign of ASP.NET 4. x that includes architectural changes that result in a leaner, more modular framework.
ASP.NET Core provides the following benefits:
- Open-source and community-focused.
- Frameworks and development workflows integrated on the client-side.
- An integrated approach to building web UIs and web APIs.
- Architected for testability.
- The GRPC protocol supports Remote Procedure Calls (RPC).
- Windows, macOS, and Linux can all be used to develop and run applications.
- Razor Pages makes coding page-focused scenarios easier and more productive.
- C# and JavaScript can be used simultaneously in Blazor, while server-side logic and client-side logic are written using .NET.
- Config system that can be configured in the cloud.
- Built-in dependency injection.
- Streamline HTTP requests, make them lightweight, fast, and modular.
- The side-by-side versioning of files.
- Support for the following platforms:
- Kestrel
- IIS
HTTP.sys - Nginx
- Apache
- Docker
- A modern web development tool that simplifies the process.
Modular Architecture
A modular approach to .NET Core is supported by NuGet packages. Different NuGet packages are available for different features that can be added to the .NET Core project as needed. Even the .NET Core library is available through NuGet packages. It contains the NuGet package Microsoft.NETCore.App, which is the default .NET Core app model.
Useful Links
- .NET Core Source Browser gives you access to .NET Core type and member declarations, files, and assemblies: https://source.dot.net/
- Get the help on .NET Core types on .NET Core API Reference Docs: https://docs.microsoft.com/dotnet/api/?view=netcore-3.0
- Learn about .NET Core in detail on https://docs.microsoft.com/en-us/dotnet/core
- Download .NET Core runtime and SDK from https://dotnet.microsoft.com/download/dotnet-core