What changes from the old version to this?
The biggest change is how to make a code for all platforms. Now it becomes easier and intuitive to do a single project that will run on all platforms. This can be seen in:
Note that some parts of the code may be specialized for the platform, but it’s all in the same project and at the time of building it will pick up the relevant parts for the target used at the moment. It gets much more organized and simple.
There will be some breach of compatibility. This is necessary for some evolution and to correct some mistakes and clear up what was already known to be obsolete. Yes, many problems of design of Xamarin Forms will be corrected. I don’t know everything, but it will work much better with rendering, adopt dependency injection more broadly, some things will be more consistent or will work more generally to fit well with all platforms. I don’t think it’s worth trying to list everything here, because it changes every day, the project is not closed.
One thing I think is worth mentioning is that there will be two new programming models, one of them is MVU (yes, they invented one more Mvx :D), and Blazor who has a web way of programming and you can use it to program MAUI. Do it the way you’re most comfortable.
readonly State<int> count = 0;
[Body]
View body() => new StackLayout {
new Label("Welcome to .NET MAUI!"),
new Button(
() => $"You clicked {count} times.",
() => count.Value ++)
)
};
I saw some codes like this and it became very interesting to use markup or programming language to build screen objects.
Obviously Xamarin Forms will have a lot of normal features as well, it will continue to quickly support everything that comes back on the platforms. This new organization will help even the internal development of MAUI and community constrictions.
What platforms are supported?
There is a table between the differences between Xamarin Forms and MAUI. What changes is Microsoft’s commitment to certain platforms. The biggest change is the addition of it to make Macos and WPF official, and to improve the tools.
And of course, it will only work with One . NET (one framework for everything), you cannot use old versions to . NET 6, especially the various frameworks that existed before. NET 5.
How the migration between Xamarin.Forms and MAUI is done?
Too early to say.
Is it ready to be used in production? If not, when is a stable version due?
No, it will be available along with . NET 6 coming out in November 2021. But there will be previews 2020. It can monitor development and even build on its own https://github.com/dotnet/maui. Until then you can go using Xamarin.Forms that still has evolution happening normally. We can say that MAUI is Xamarin.Forms 6, but still is coming out the XF 5.
https://azure.microsoft.com/pt-br/updates/net-multiplatform-app-ui-net-maui-announced/
– Rovann Linhalis