原文:Introducing .NET Multi-platform App UI
github:https://github.com/dotnet/maui
- MAUI 是 Xamarin.Forms 的进化(Xamarin.Forms 已经有6年历史了)。支持Model-View-ViewModel(MVVM)和Model-View-Update (MVU)等模式编写。
- 支持Android, iOS, macOS, and Windows(github上显示,支持Linux)
- 将于今年晚些时发布预览版。目标随 .NET 6 一起正式发布(2021年11月?)。
.NET MAUI Preview 1 (Late 2020)
The first preview of .NET MAUI will be the first to take advantage of .NET 6 SDK features such as SDK style projects, build tools, and command line tools. We plan to also include:
| Feature | Description | Status |
|---|---|---|
| Namespace changes to System.Maui | Xamarin.Forms will become System.Maui | Committed |
| Slim renderer architecture | Spec | Committed |
| Remove Obsoletes | Spec | Committed |
| Replace DependencyService | Spec | Proposed |
| Remove Pages | Proposed | |
| Remove Themes | Proposed | |
| Startup registry | Spec | Proposed |
.NET MAUI Preview 2 (Early 2021)
| Feature | Description | Status |
|---|---|---|
| Introduce a Cross-Platform Lifecycle | Spec | Proposed |
| Move "AndExpand" layout option | Spec | Proposed |
| Update min and max sizing implementations | Proposed | |
| Implement GlideX | Spec | Proposed |
| Change IAnimatable | Spec | Proposed |
| Change Behavior and Trigger inheritance | Spec | Proposed |
| Replace Application.Properties | Spec | Proposed |
.NET MAUI Preview 3 (Early 2021)
| Feature | Description | Status |
|---|---|---|
| macOS Parity | Wiki | Committed |
.NET MAUI Preview 4 (Mid 2021)
| Feature | Description | Status |
|---|---|---|
| Windows Parity | Wiki | Committed |
.NET MAUI Preview 5 (Mid 2021)
.NET MAUI Release Candidate (September 2021)
.NET MAUI General Availability (November 2021)
-----------------------------------------------------------------------------------------------------------
Xamarin.Forms vs MAUI
| Xamarin.Forms | MAUI | |
|---|---|---|
| Platforms | ||
| Android | API 19+ | API 21+ |
| iOS | 9-14 | 10+ |
| Linux | Community | Community |
| macOS | Community | Microsoft |
| Tizen | Samsung | Samsung |
| Windows | UWP Microsoft WPF Community |
Microsoft |
| Features | ||
| Renderers | Tightly coupled to BindableObject | Loosely coupled, no Core dependencies |
| App Models | MVVM, RxUI | MVVM, RxUI, MVU, Blazor |
| Single Project | No | Yes |
| Multi-targeting | No | Yes |
| Multi-window | No | Yes |
| Misc | ||
| .NET | Xamarin.iOS, Xamarin.Android, Mono, .NET Framework, ... | .NET 6+ |
| Acquisition | NuGet & Visual Studio Installer | dotnet |
| Project System | Franken-proj | SDK Style |
| dotnet CLI | No | Yes |
| Tools | ||
| Visual Studio 2019 | Yes | Yes |
| Visual Studio 2019 for Mac | Yes | Yes |
| Visual Studio Code | No | Yes |