Dot.Blog

C#, XAML, Xamarin, UWP/Android/iOS

MAUI Bêta 3 et .NET 6

MAUI sera délivré en novembre 2021, mais jusque-là Microsoft va continuer à nous donner des versions intermédiaires pour nous préparer au grand saut ! Justement la Bêta 3 a été livrée, que contient-elle ?

MAUI

Je ne referai pas un récap à chaque article sur MAUI mais il faut tout de même placer le décor pour ceux qui n’ont pas tout suivi. Première chose à faire lire mon article Aloha Maui, et merci pour tout Xamarin.Forms !

C’est déjà pas mal pour avoir une idée.

Pour ceux qui ne veulent pas lire (TL; DR pour les habitués du net), voici un petit résumé visuel :

image

Pour faire simple, MAUI est la nouvelle plateforme de développement cross-plateforme totalement unifiée de Microsoft. Elle permet de cibler les PC, les Android, les Mac, les iOS, etc, avec une seul code C# et un seul code XAML. Le principe est d’avoir un seul projet MAUI au lieu d’une solution Xamarin.Forms contenant le projet Xamarin.Forms lui-même et tous les projets correspondant aux cibles (Android, Mac…).

MAUI est une évolution majeure des Xamarin.Forms, ce n’est pas un nouveau produit, mais bien une évolution. Mais qui dit évolution majeure dit changements majeurs aussi, il y aura donc des petites adaptations à faire aux projets existants !

.NET 6

Dans la construction de MAUI il y a la partie visuelle, c’est à dire le portage des Xamarin.Forms avec des adaptations, et il y a la partie code. C’est là aussi que se trouve le gros de l’innovation puisque tout va se reposer sur .NET 6 qui devient la lib de base pour tous les projets (quand je repense à cet incapable de Sinofsky qui voulait totalement détruire .NET, C# et XAML alors que c’est de là que vient le salut et l’innovation aujourd’hui !)

Là où nous avions besoin de versions de Mono adaptées par la société Xamarin avant son rachat pour faire tourner des apps Xamarin.Forms sur Android ou iOS, .NET 6 vient unifier tout cela en devenant cross-plateforme par nature.

Il y a une convergence logique et absorber un produit comme Xamarin et les Xamarin.Forms a pris du temps. Mais ce n’est plus seulement un vœu pieux c’est une réalité avec des livraisons qui se succèdent jusqu’à la 1ère version publique en novembre 2021.

D’ailleurs il n’y a pas que les Xamarin.Forms qui profitent de tout cela même si elles sont à l’honneur puisque MAUI, le système d’UI unifiée c’est avant tout Xamarin.Forms. Parmi les gagnants on trouve aussi l’excellent Blazor pour faire du Web natif utilisable partout, sur mobile comme sur desktop.

On peut déjà jouer avec Blazor sous .NET 5 depuis novembre dernier.

Pour résumer, .NET 6 est une étape cruciale, historique sans exagérer, qui va mettre fin à l’éparpillement des versions de .NET toutes semblables mais un peu différentes quand mêmes… .NET Framework, le “canal historique” de WPF, .NET Core, la version cross-plateforme, Mono et les Xamarin.Forms, etc, tout ce petit monde qui avait ses propres particularités va se fondre dans .NET 6.

Télécharger .NET 6 Bêta 3

Vous trouverez tous les téléchargements de .NET 6, son SDK et le reste à cet endroit : https://dotnet.microsoft.com/download/dotnet/6.0

Je vous conseille vivement de commencer à regarder de près car la bêta 3 est assez avancée même si bien entendu on est encore loin surtout côté Xamarin.Forms de la version finale. Toutefois on peut déjà créer des petits codes qui compilent et tournent sur Android ou iOS.

Ce qui caractérise la version 3 c’est l’ajout de plein d’API qui viennent compléter au fur et à mesure l’édifice en construction. Du CLI .NET et MSBuild jusqu’à ASP.NET Core, Blazor, le Hot Reload, la génération de code, les performances… A coup sûr tous les bêtas à venir fonctionneront sur le même mode d’enrichissement, pierre par pierre, un peu pour les bases, un peu pour la façade, on amène l’électricité un peu plus loin dans le bâtiment, jusqu’au moment où les échafaudages seront retirés, que la peinture sera encore humide et que nous aurons officiellement le droit de nous servir de tout cela en production !

Et les Xamarin.Forms ?

Comme je le disais il y a déjà des choses à voir et à tester avec des bouts de MAUI qui compilent et tournent. Mais on se doute bien que MAUI, l’évolution des Xamarin.Forms par sa position en haut de la pyramide (puisque ça utilise tout, le code C#, la compilation, mais aussi le visuel) ne peut pas être dans les premiers modules utilisables en bêta. Pour avoir un MAUI utilisable il va falloir attendre encore un peu, et pour un produit totalement fonctionnel je pense que Microsoft va travailler dur jusqu’à la dernière limite de novembre 2021. Sans compter les inévitables mises à jour courant 2022.

Transplanter la tête Xamarin.Forms sur le corps de .NET 6 est une œuvre digne du Dr Frankenstein, dans le bon sens de la chose : la création d’un nouvel être plus grand, plus fort, fabriqué avec les meilleurs morceaux puisés ici et là ! Raccorder la tête au reste est l’opération la plus délicate certainement. Même en neurochirurgie nous ne savons toujours pas effectuer de greffe de cerveaux ou de têtes…

Laissons le temps à Microsoft d’accomplir ce qui dans le monde réel serait de la pure fiction mais qui même dans celui de l’informatique reste un travail de titan. Mais au fur et à mesure nous aurons le plaisir de découvrir les avancées, le temps va passer vite !

Se préparer ?

Si vous avez suivi jusqu’ici vous avez compris que MAUI proprement dit sera l’une des dernières pièces à être mise en place de façon complète. La tête ne peut marcher que si tous les organes du corps fonctionnent.

Mais chaque bêta apporte un petit quelque chose qui permet de se familiariser avec .NET. Bientôt un nouveau Visual Studio viendra aussi nous épauler, et il faudra pour lui aussi prendre un peu de temps pour étudier ses différences.

Donc plus tôt vous vous intéresserez aux bêtas moins vous aurez l’air … bêta en novembre prochain !

Conclusion

Dot.Blog parle de C# et de XAML et du couple incroyable qu’ils forment depuis déjà longtemps. Les premiers articles de Dot.Blog datent de Septembre 2007, 15 ans déjà ! 15 ans à présenter ce que ce couple donne de meilleur à chaque fois, WPF, Silverlight, Windows Phone, UWP, Les Xamarin.Forms.

Et déjà s’ouvre une nouvelle ère, celle de MAUI. Celle d’un bouleversement énorme techniquement parlant mais en douceur, toujours en C# et en XAML. Ceux qui depuis les débuts me suivent et me font confiance peuvent constater qu’avec le temps je ne les pas embarqués sur des terrains mouvants ou des pistes aventureuses… C# et XAML se sont un peu transformés au fil des ans, et c’est heureux ! Mais ce sont toujours les mêmes. .NET 6 reste .NET avec sa logique.

Travailler depuis si longtemps avec les mêmes outils est du jamais vu en informatique, une telle stabilité est incroyable surtout quand on pense aux bouleversements technologiques de ces 15 dernières années. Et cette stabilité elle ne se trouve pas dans les nouveautés dont la plupart sont déjà mortes et dont vous avez même oublié le nom, elle se trouve dans la voie tracée par C#, XAML et .NET depuis le début.

Suivez-moi, la route continue et elle va encore plus loin que vous ne le pensez !

Stay Tuned!

blog comments powered by Disqus