The first official release of the .NET Framework took place in 2002. Many things have changed since that time, including .NET Framework being reimplemented as .NET Core and then renamed to .NET for simplicity. No platform, especially a popular one, could live for so long without myths and misunderstandings growing around it. Let’s look at a few of them to understand how true they are.
Is .NET proprietary?
That was true in the early days when .NET Framework had just been released. Soon enough, several alternative FOSS (free and open source) implementations followed, with Mono being the most notable one. It was first released in 2004 and greatly influenced the evolution of .NET. In 2016, inspired by the example of Mono, .NET Core was released as the FOSS reimplementation of the .NET platform by Microsoft. The MS team continues to follow that way, with the majority of the new .NET toolchain for development and test automation being open-sourced under a free license.
Is .NET Windows-only?
Starting with Mono and followed by .NET Core, the platform is available for all major desktop platforms: Windows, MacOS and Linux. In addition, using Xamarin, which was also developed by Mono team and later bought by Microsoft, engineers are able to use the .NET toolchain to build and test mobile applications for Android and iOS using a single codebase.
Is .NET slow?
Microsoft spent a lot of time fine-tuning platform performance for .NET to become extremely fast. As a result, .NET 7, the latest version currently, is faster than it has ever been. The platform provides a lot of built-in tools to adjust performance to one’s needs, allowing it to compete with lower-level languages.
Is the .NET development ecosystem gated and pricy?
Today, Microsoft provides a free Community Edition of Visual Studio as a full-featured IDE (integrated development environment). There are also other free & paid options available on the market, like JetBrains Rider, VS Code and many other text editors. Many of them are powered by OmniSharp project, which is aimed at providing a seamless developer experience for the .NET platform for as many editors as possible.
Is .NET only used in enterprises?
.NET is a great platform for enterprises like banks, insurance and media companies, but it is only the tip of the iceberg. Besides being a platform of choice for web and desktop applications, it is not the least popular option for mobile, IoT, machine learning, embedded & game development and even VR/AR. In fact, Unity uses C# as their main development language with thousands of games developed, Stack Overflow leverages ASP.NET Core for back-end, Bitwarden is built in .NET — the list can go on and on.
Are .NET tooling and capabilities for test automation limited?
.NET capabilities are truly diverse. There is always something to choose from when starting any type of test automation activity on the project: unit test frameworks and runners, different general-purpose tools for web API and UI test automation, desktop and mobile, game test automation, performance testing, BDD tools, test doubles, project architecture verification, assertion libraries, test data generation, visual and mutation testing, etc. By the way, if you have decided to pursue this career, check out our Test Automation roadmap for Juniors — a detailed map of topics and technologies the beginner should follow to reach the Junior position in an optimal way.
Hope that we’ve helped you to learn more about the .NET world and busted the most common myths about this platform. .NET keeps evolving at a rapid pace and has a lot of benefits for developers and test automation engineers working with it, so it makes total sense to be a part of it: go on and discover the possibilities for .NET Juniors from EPAM right now!