March 8 is on the calendar, and I am writing this article.
Why? - Because WinUI 3 is important!
Background
In order to understand what WinUI 3 is and what global problem it solves, I propose to plunge into the history of desktop development for Windows:
So, it's 1995, and we are starting to write our calculator in C ++ and Win32. Win32 is the lowest-level system API for working with a visual interface. Below is only Windows Driver Model for drivers.
2002 - our calculator can already be written in a higher-level shell - WinForms (Windows Forms). It creates a wrapper over Win32 for easier and more convenient interaction with the system. And due to the .NET Framework and CLR, which also came out in 2002, we can use a whole bunch of different languages ββfor development. Among them were C #, C ++, VB.Net, J # and others.
WPF is our answer to legacy technologies. In late 2006, Microsoft introduced WPF, an extensive API for creating desktop graphics programs with rich design and interactivity. The new approach included a completely different model for building custom applications, based on the .NET Framework and DirectX. With the release of WPF, we have the following features: WEB-like layout model, rich drawing and animation model, audio and video support, styles and templates, declarative user interface, MVVM approach, and XAML markup language.
2012 - Windows 8. . , - WinRT Windows Runtime. , Windows 2 : . WinRT API, COM. COM, , . , PrintDialog - , . , Win32.
2016 - Universal Windows Platform UWP. Windows. WinRT, UWP , Windows 10 ! , , . WinUI 2 - Windows.
?
- , . UWP ( Windows github). , - β¦
Telerik 2016 , UWP, . ? Windows. API Windows Runtime, Win32 . , , . API, UWP , . : API, UWP
WinUI 3
API WinUI. WinUI 3 Preview 4 -, . API , WinRT UWP API?
: . .NET:
.NET?
, 2002 Windows- - .NET Framework. 2019 , - 4.8
, 2016 - .NET Core. , .
- .NET 5. , 2020 , . .NET Framework, .NET Core .
Microsoft, , .
, - .NET 5, Microsoft , API: - UWP API Win32.
, , API.
WinUI 3
Microsoft, WinUI 3 , . , Windows WinUI 3.
Xamarin, MAUI and WinUI 3?
MAUI (Multi-platform App UI) - . Xamarin.Forms. Windows WinUI 3. MAUI: devblog.microsoft, github.
Uno Platform and WinUI 3?
Uno Platform - , WinUI Windows iOS, macOS, Linux, Android WebAssembly.
Uno Platform WinUI 3. 12 WinUI 3 Preview 4, Uno Platform. Uno Platform: platform.uno, github.
API
API, Microsoft . , Project Reunion. , Win32 UWP API.
Project Reunion will be very closely related to WinUI 3. And it is already in the preview version.
More information on Project Reunion: docs.microsoft.com , github