As someone who’s built more than one popular platform on top of .NET, I’m often asked about its relevance and whether it’s an ecosystem worth investing in. This question is especially prevalent in the tech world of the San Francisco Bay Area, where tech trends change like the seasons, but .NET has always been a steadfast, consistently popular platform. And in my opinion, it’s also the most overall productive, enjoyable, and accessible platform.
There are other great programming languages like Rust; there are other great App UX platforms like Flutter. But when it comes to overall productivity and elegance, there’s probably nothing that can compete with .NET.
.NET today isn’t the .NET of the old generation, and there’s a reason it was the most-loved platform for 3 years in a row in the annual StackOverflow developer survey. In fact, the combination of .NET Framework and the new .NET Core far surpasses everything else. It could even be said that of all the frameworks in these surveys, .NET embodies the strongest positive emotions of love and fear.
To understand why developers love .NET so much, let’s take a comprehensive look at the developer experience with .NET.
first-class tool
The first is tools. Visual Studio for Windows and Mac has first-class support for .NET, and VS Code has limited support for it (an oversight from Microsoft, which we’ll discuss below). They represent the most used IDEs in the world, in fact, VS Code is the absolute ruler of IDEs, with more than twice as many users as Visual Studio (the second).
Considered by many to be the best IDE out there, JetBrains Rider not only provides the same support for .NET as Visual Studio, but it builds on it considerably, bringing what is probably the best . NET tools experience.
The tools themselves are built on underlying platform features such as a robust one-click build and deploy system, providing an easy first-run experience, allowing developers to go from platform installation to application deployment in minutes. In fact, the ability to deploy applications using .NET from scratch without having to wrestle with complex toolchains, build files, or platform versioning has set the standard for other platforms and increased developer loyalty to the platform Spend.
run anywhere
Like the Java dream of the 1990s, .NET also runs on all major platforms and has custom integration tools to take full advantage of each platform. While it was initially locked to Windows, today it runs on Windows, macOS, iOS, Android, Linux, mainframes and even microcontrollers. It also runs in the cloud, and Azure, AWS, and Google Cloud all offer built-in .NET application support.
A collection of elegant programming languages
The Common Language Runtime (CLR) is a core feature of .NET, and developers can write applications in over 25 languages, including C# and F#—two of the best programming languages in the world—and VB.NET—though People love to make fun of it, but it’s really powerful in its own right.
Strong community and developers
Depending on how it’s calculated, the number of active developers is between 2 million and 2.5 million. And according to our own research, nearly half of the world’s active developers know or are using .NET.
The developer ecosystem has grown every year since the inception of .NET. So, when it’s hard to hire developers, you can rest assured that .NET is one of the largest developer talent pools.
It’s still growing rapidly. The latest TIOBE programming language index shows that C# has grown the most in popularity over the past year and is on track to enter the top three, displacing the C language. In fact, with VB.NET, it easily tops the list.
The beauty of technology
2016’s .NET Core refactoring completely overhauled .NET, providing a modern, lightweight, composable, a la carte way to pull from its modern package ecosystem directly via Nuget Obtain the necessary platform libraries. It abandons the traditional Win32 platform connection and incorporates innovations in runtime and tooling from the Mono and Xamarin teams, paving the way for a truly cross-platform experience.
.NET Core also brings better performance. By breaking the limitations of the old .NET Framework runtime, Microsoft has brought a series of performance improvements.
Speaking of performance, Xamarin’s pre-compiler (now incorporated into .NET) allows developers to compile binaries directly at build time for assembly code for a specific chip architecture, enabling native C// C++ performance.
This inherent way of memory management also brings benefits for reliability and security. From a reliability standpoint, it virtually eliminates instability and crashes caused by memory leaks commonly found in unmanaged applications such as those written in C/C++. From a security standpoint, the security of memory-managed platforms eliminates a host of security issues caused by memory usage, which, according to Google’s security data, accounts for roughly two-thirds of all unmanaged security.
100% open source
Everything in .NET is open source and free to use, including class libraries, runtimes, compilers, programming languages, and application frameworks. You can find all the source code in the DotNet repository on GitHub.
Best-in-class ecosystem
In addition to Microsoft’s input, the third-party ecosystem is also very large, with a large number of high-quality libraries, plugins, tools and frameworks.
A few examples of very high-profile third-party integrations are listed below:
-
Uno Platform and Avalonia – Two proven MAUI alternatives, Uno Platform and Avalonia provide an elegant, delightful, high-performance, cross-platform UX framework.
-
Meadow – Developed by Wilderness Labs, it can be used to build IoT solutions for .NET running on microcontrollers.
-
Telerik – Pluggable UI controls that work on almost any platform.
There are countless other consulting firms, solution providers, and .NET shops that are certified and qualified to build .NET solutions.
Trusted by businesses
We all know that .NET is the mainstay of the enterprise, and while Microsoft doesn’t publicly release .NET adoption, 95% of Fortune 500 companies use Azure. Also, I’ve been told privately that at least 80% of Fortune 500 companies are using .NET, but the actual number may be higher because telemetry is often turned off.
.NET is especially useful for mission-critical applications, where .NET’s reliability and proven runtime are comforting. In fact, .NET is widely used by the US Department of Defense.
it’s not perfect
Despite all its magic, .NET isn’t perfect. I’d like to point out that for all the good stuff Microsoft has to offer with it, it also has downsides. Much of that is directly attributable to shifting priorities within Microsoft and a developer culture that the leadership team has struggled to keep up with on the front lines.
MAUI is Microsoft’s flagship cross-platform UI library, the successor to Xamarin, and also combines the previous Windows UI framework WPF, but has long been underfunded, which makes Flutter the best cross-platform UX platform today. This is especially true on Linux platforms, as Linux does not currently support MAUI.
These same leadership teams sometimes mishandle their relationships with the community, as evidenced by the disorientated .NET Foundation and the Hot-Reload fiasco.
Shifting priorities may also be the reason for limiting support for VS Code, although there is basic .NET support, there is still a lack of proper plugins to handle .NET’s multi-project solution format, which can be difficult to support for more complex projects. Say it is necessary. This is because Microsoft has been prioritizing monetization by directing .NET developers to Visual Studio sales, rather than offering them free VS Code.
Having said that, it’s clear that priorities within Microsoft are shifting to providing better cross-platform tooling support, and I’ve heard that a full VS Code solution is in the works.
concluding remarks
However, even with some minor shortcomings, .NET can easily become the most efficient and trusted developer platform ecosystem in the world. Nothing is more complete, open, and efficient than .NET.
All indications are that .NET will continue to do so for the foreseeable future as it continues to evolve and teams and ecosystems continue to innovate. So betting on .NET is a good thing!
Original link:
https://medium.com/@bryancostanich/its-good-to-bet-on-net-c22853f501c7
The text and pictures in this article are from InfoQ
This article is reprinted from https://www.techug.com/post/bet-net-is-a-good-thing72c115ea3056fd7c7744/
This site is for inclusion only, and the copyright belongs to the original author.