Categories
Software Engineering

.NET 6 & C#10

Why .NET & C#?

-“Ranked #1 for two years in a row”

The .NET community has seen significant growth in the last few years..NET Core is ranked #1 for two years in a row (2019 & 2020) for the most loved framework on stack overflows software developer survey.

-Top 30 Repositories since 2016

Cloud Native Computing Foundation tracks the highest velocity projects of all GitHub & measures pull requests & issues coming in & how many are accepted. Repositories for .NET have consistently been in the top 30 since 2016 & is currently listed as #1 most active org. C# is the top 5 languages on Github, this is an indicator of a healthy, open-source ecosystem

-“10X Faster than Node.js”

ASP.NET Core ranks at the top of the industry. Tests were done on standard independent opensource tech & power benchmarks that measure dozens of languages & application frameworks. ASP.NET Core is 10x faster than Node.js

TechEmpower Performance comparison with Java & Node.js

Better Performance means lower compute costs (this is a big deal for large, enterprise apps where there can be more than +100M transactions per second)

.NET 6’s WebFramework ASP.NET Core is 10X faster than Node.js

gRPC server performance is faster than Go, C++ & Java

-Faster Entity Framework Core Performance

This is one of the best performing .NET Data Access Layers. EF Core is 70% faster with .NET 6 & up to 43% reduction in memory allocation on tests done on TechEmpower Fortunes Benchmark.

-Unification Of .NET

To simplify platform & chaos for .NET developers & produce a single stack for the best solutions for all modern workloads. There will be one .NET.

Developers can create cross-platform & native machine mobile, desktop, web apps, API’s & services with a single codebase! Blazor is expanding to native desktop capabilities. With .NET 6 you can create hybrid client apps that combine web & native UI together. Developers can reuse UI components across native & web apps with .NET MAUI (Multi-platform App UI)

Productivity features are geared towards improving the clarity & simplicity of code.

-Blazor Web Assembly AOT Compilation

.NET 6 comes with another Blazor enhancement, Blazor Web Assembly AOT (Ahead-Of-Time) compilation. This allows web assembly to have a much smaller download size compared to .NET 5. This was done despite Microsoft adding support +500 new API’s for .NET 6. AOT takes .NET Code & precompiles it to run much faster.

-Hot Reload

This is a developer productivity enhancement feature that helps developers quickly iterate through UI instead of having to build, stop, & load or wait for code to compile. We simply save & it’s very fast. There will also be the ability to install a debugger with Hot Reload.

-Synthetic Simplifications

Developers can not write code faster when writing small API’s & Microservices. This is perfect for apps built for the cloud. In .NET 6 by eliminating overhead & boilerplate code. There are also productivity features geared towards improving the clarity & simplicity of code. If your app grows large enough, there is a path to MVC to support heavier loads.

Here is a deeper dive: https://www.youtube.com/watch?v=GJ_PaRNDe9E