Good news for unity developers, with unity 2021.2 (which came out on 26, Oct 2021) tech release you can enjoy the latest .NET standard API 2.1 and full access to C# 8 features. Sounds great but also confusing like., .NET standard API, .NET, .NET standard what all are these? Let’s jump in to understand that how they are fit together, and how important this thing is for unity3d programmers/coders/developers:
.NET and Its Implementations:
.NET is an open-source, free, and cross-platform
developer platform (Languages + libraries) for building different types of app.
It has multiple different implementations that allow running .NET code on different platforms like windows macOS, iOS, android, or many more.
Some of the .NET implementations are
·
.NET Framework (website, services,
win app)
·
.NET Core (which runs anywhere
macOS, Win, Linux)
·
Mono/Xamarin (for mobile)
These implementations are also called platforms. Now one
thing is common for all of them! Which is the standard? Yes, here comes
the .NET standard.
What is .NET Standard?
.NET Standard is the shared set or base set of
libraries/APIs that can run with .NET Core or Mono or Net
framework. It is common to all .NET implementations. All .NET implementations use .NET standard shared libraries, so it runs everywhere.
.NET Standard is one consistent API that is common to all implementations.
Of course, each implementation has its own set of additional code or APIs
which deal with a specific problem like the .NET framework is specific to Windows OS. if you want to know which .NET Standard API is supported by which .NET implementation then Please check the official site.
Mono by Unity:
Mono is one of the .NET implementations by Xamarin (in 2003).
Unity fork Mono and maintain its own implementation due to license issues. In this
way, unity uses a customized version of .NET version in unity and tries to
update-to-date to the latest version. So, unity maintains both the game engine
and .NET custom implementation which is definitely a complex task. This is the reason that sometimes one feature
or class is not supported in unity. Unity mono implementation wasn't fully
updated up until now.
But From Unity 2021.2, mono has been updated to the recent version. Previously it was in 2018. With the new update: C# 8 support has offered with parallel debugging, enhancing implementation quality. One more thing is that the new version now also supports .NET standard 2.1 API. Previously we were stuck with the legacy version of .NET standard API in unity but with the release of 2021.2, you can now access .NET standard 2.1 API and full access to C# 8 features. Remember unity does support some of the C# 9 features too! The list is given below!
Caution: This all happened with Unity2021.2 which is the
stream release! For more stable Unity, you should wait for LTS release!
0 Comments