SECTION I - .NET and the Common Language Runme (CLR)
19
supported operating systems. .NET Core Version 3.0 (planned for release in 2019) will
add support for Windows Forms and WPF based Windows desktop applications. Entity
Framework 6.0 will also be supported in .NET Core 3.0.
Independent of Microsoft, programmer Miguel de Icaza, who is now a Distinguished
Engineer at Microsoft, developed an open source implementation of the .NET
framework for Linux, named Mono. Since the release of version 1 in 2004, it is
continuously evolving. Today it supports a large subset of .NET class libraries, including
Windows Forms for desktop application development and ASP.NET for web application
development. It runs on a large number of operating systems, including Linux, macOS,
Sun Solaris, BSD, Windows, and even gaming consoles, such as Sony PlayStation 4 and
Xbox One. Earlier versions of Mono also offered support for Nintendo Wii and Sony
PlayStation 3. An important complement to the gaming console support in Mono
was MonoGame, an open source reimplementation of the abandoned Microsoft XNA
Framework for game development, originally supported on Windows, Windows Phone
and Xbox 360. With Mono, MonoGame games can now run on most computers and
operating systems.
Xamarin is a .NET implementation based on Mono, which supports the development
for iOS, Android and macOS. It was developed by Miguel de Icaza’s company of the
same name. Microsoft acquired Xamarin in 2016. Its development model is based on
a subset of .NET class libraries, combined with the ability to invoke native APIs of
each supported platform. Additionally, Xamarin.Forms, a XAML based user interface
framework can be used for development of common user interfaces for iOS, Android
and Windows Mobile applications.
Mono is also used in Unity 3D, a cross platform game development engine, which
currently supports over 25 different platforms, including mobile, desktop, gaming
consoles, virtual reality and augmented reality platforms. Although the game
development mostly takes advantage of the proprietary Unity 3D game engine, the
recommended scripting language is C# and takes advantage of a subset of .NET class
libraries.
The latest .NET runtime is Tizen.NET. It is developed by Samsung and runs on their
Linux based Tizen operating system for smartphones, smart TVs, wearable devices and
other types of devices. It is based on .NET Core, but also takes advantage of Xamarin.
Forms as the user interface framework.