Fermer

juin 19, 2020

7 choses à apprécier à Maui et .NET MAUI


.NET UI d'application multiplateforme (MAUI) est la prochaine évolution de la solution d'interface utilisateur multiplateforme pour les développeurs .NET. Tout comme l'île, MAUI aura beaucoup à offrir aux développeurs. Explorons la promesse de .NET MAUI.

Maui – le paradis sur Terre. Surnommée l'île de la vallée, Maui est la deuxième plus grande île hawaïenne et a beaucoup à offrir. Maui se vante de plages immaculées de renommée mondiale et d'une incroyable vie sous-marine sous la surface de l'eau. Mais ce n'est pas tout. Maui est l'hôte d'un volcan massif, de hautes montagnes et de cascades à couper le souffle. Avec une grande variété de systèmes météorologiques et une scène culinaire de premier ordre, Maui est un véritable joyau de l'archipel hawaïen. Maui incarne l'esprit Aloha et offre quelque chose pour tout le monde.

 DotNetBotMaui "title =" DotNetBotMaui "data-method =" ResizeAndCropResizeAndCropArguments "data-douanizemethodproperties =" {"Width": "400", "Height": "392", "ScaleUp": false, "Quality": "High"} "/> </p>
<p> Il existe un autre Maui qui est également très excitant: le <a href= .NET MAUI . .NET est déjà bien positionné pour permettre Les développeurs doivent cibler une grande variété de plates-formes d'applications et d'outils raffinés. Cependant, .NET a besoin d'une certaine unification et le moment est venu de déployer un cadre d'interface utilisateur de première classe cohérent pour une variété de besoins de plate-forme. Entrez dans l'évolution des plate-forme .NET pile — l'interface utilisateur multi-plateforme, affectueusement appelée .NET MAUI. Alors qu'à ses débuts, .NET MAUI promet déjà de nouveaux outils, un cadre unifié et plus de flexibilité pour les développeurs. Explorons les sept principales choses à apprécier dans MAUI — beaucoup de similitudes entre l'île et le cadre.

Haleakala Chopper To urs

Maui a beaucoup à offrir. Même avec beaucoup d'enthousiasme, il y a des limites à ce que l'on peut voir sur terre à Maui. Il y aura les chutes d'eau à flanc de montagne en amont que vous manquerez ou la grandeur du cratère Haleakala. Pour obtenir une image plus grande de Maui, il faut voler avec les oiseaux. Beaucoup de la beauté de Maui est souvent mieux capturée par les airs et les visites en hélicoptère populaires peuvent juste rendre votre vol en vaut la peine. Voyager entre les îles est également une grande partie de la vie à Hawaï et les petits vols en avion panoramiques offrent d'excellentes opportunités pour profiter des vues.

Comme pour l'île, on ne peut pas apprécier .NET MAUI sans avoir une vue d'ensemble. Alors que .NET moderne permet aux développeurs de cibler une variété de plates-formes, les développeurs voient un peu de fragmentation dans le cadre et des différences d'outils. Il existe plusieurs bibliothèques de classes de base (BCL) .NET telles que .NET Framework. .NET Core, Mono, Unity etc., chacun s'adressant à .NET à des modèles / plateformes d'application spécifiques. Bien que les outils .NET MAUI soient livrés avec .NET 6 en novembre 2021, ils profiteraient sûrement des avantages de .NET 5 attendus plus tard en 2020. .NET 5 voit une histoire d'unification pour tous les .NET, le meilleur de .NET Core et Mono. Avec .NET 5, les développeurs obtiennent un .NET open source fiable unique avec des outils multiplateformes raffinés pour créer tous les types d'applications — Windows, Linux, MacOS, iOS, Android, WebAssembly et plus encore.

 DotNet5 "title =" DotNet5 "data-openoriginalimageonclick =" true "/> </a> </p>
<p> .NET MAUI est positionné pour être la prochaine évolution de <a href= Xamarin.Forms – avec une confiance accrue, un support de plateforme supplémentaire En plus des plates-formes mobiles iOS / Android, .NET MAUI ajoute la prise en charge des plates-formes de bureau, à savoir Windows et MacOS, ainsi que la prise en charge des appareils à double écran à venir. En substance, .NET MAUI promet d'être le cadre d'interface utilisateur à pile unique pour les développeurs .NET visant des charges de travail multiplateformes – des applications vraiment natives à partir d'une base de code unique. .NET MAUI ferait partie intégrante de l'histoire globale de .NET, séduisant les développeurs avec une portée de plate-forme et des outils raffinés.

 MauiOverview "title =" MauiOverview "data-openoriginal imageonclick = "true" /> </a></p>
<h2 id= Honokalani Black Sand Beach

Lorsque vous adhérez aux différences, vous trouvez souvent quelque chose d'enrichissant. Bien sûr, Maui offre de nombreuses plages incroyables avec du sable blanc et soyeux pour s'imprégner des tropiques. Mais sortez des sentiers battus vers Hana et vous trouverez une belle plage de sable noir – des galets noirs mystiques redéfinissent ce qu'une plage peut être. Lors de la randonnée vers la plage de sable noir de Honokalani, vous trouverez également des grottes cachées, des trous d'eau géants et des vues incroyables.

Xamarin a été une merveilleuse solution pour les développeurs .NET allant sur plusieurs plates-formes et la pile d'interface utilisateur Xamarin.Forms est définie en XAML. Les développeurs sérieux livrant des applications Xamarin.Forms ont souvent eu recours à MVVM (Model-View-ViewModel), un principe de conception commun pour la cohérence du code. .NET MAUI offrira aux développeurs la même expérience C # / XAML avec la prise en charge de divers cadres MVVM. Voici comment les développeurs ont traditionnellement raccordé un bouton comptant les clics dans Xamarin.Forms – parfaitement bienvenue dans .NET MAUI.


    
    


 public ICommand ClickCommand {get; }
chaîne publique Text {get; ensemble; } = "Click Counter";

nombre entier = 0;
void ExecuteClickCommand ()
{
    count ++;
    Text = "Vous avez cliqué {count} fois.";
} 

Quelle que soit la popularité de C # / XAML / MVVM pour les développeurs Xamarin.Forms, il serait myope de penser que tous les développeurs veulent faire la même chose. En fait, l'un des objectifs de .NET MAUI est d'ouvrir l'entonnoir et d'inviter des développeurs aux mentalités diverses dans le giron. Un autre modèle de conception populaire est MVU (Model-View-Update), favorisé par de nombreux développeurs React Native ou Flutter. MVU favorise un flux unidirectionnel de gestion des données et des états, ainsi qu'une expérience de développement en premier code qui met rapidement à jour l'interface utilisateur en appliquant uniquement les modifications nécessaires. .NET MAUI permettrait aux développeurs d'écrire une interface utilisateur C # fluide pour construire l'arborescence visuelle et d'utiliser le modèle MVU pour connecter les choses – la mise en œuvre réelle serait probablement un spin-off du cadre populaire Comet UI . Voici le même compteur de clics sur le bouton:

 public class MainPage: Afficher
{
    état en lecture seule  count = 0;
    état en lecture seule  text = "Hello World!";

    [Body]
    Voir le corps () => nouveau VStack
    {
        nouveau texte (texte)
                .FontSize (32),
        new Button ("Increment", () => state.Text = $ "Click Count: {clickCount.Value ++}")
                .Background (Color.Blue)
                .Couleur (Couleur.Blanc)
    };
} 

Pour les développeurs Web .NET, la popularité de Blazor est à travers le toit et pour une bonne raison. Après une longue attente, Blazor est entièrement prêt pour WebAssembly – les développeurs peuvent écrire C # avant / arrière et profiter des performances Web natives. Ne serait-il pas intéressant de réutiliser les connaissances de Blazor pour créer des applications mobiles natives sur Xamarin.Forms? C'est le but de Liaisons expérimentales de blazor mobile – pour introduire les modèles de programmation Web familiers dans le terrain mobile multiplateforme natif. Gardez à l'esprit cependant qu'il n'y a pas de jeu WASM ici – ce qui est simplement utilisé est la syntaxe Razor pour rendre l'interface utilisateur native et le modèle de composant Blazor de type React. Il y a de fortes chances que .NET MAUI gagne la manière Blazor de rendre l'interface utilisateur. Voici le compteur de clics sur les boutons:


    
    


 @code {
    int count;

    void HandleClick ()
    {
        count ++;
    }
} 

Plongée en apnée à Molokini

Une grande partie de la beauté de Maui se trouve sous la surface de l'océan. De la célèbre rive sud de Maui, des excursions en bateau emmènent les gens dans un petit paradis sous-marin: le cratère Molokini. Cette minuscule île en forme de croissant et ses environs offrent un habitat naturel à une grande variété de vie océanique. Allez sous la surface et vous obtenez des expériences de plongée en apnée de classe mondiale. Et vous pourriez juste apercevoir quelque chose d'incroyable sur votre chemin de / vers Molokini – la puissante baleine à bosse.

De même, une grande partie de ce qu'il faut apprécier sur .NET MAUI se trouve sous la surface. Combiner le meilleur de .NET Core / Mono et fournir une pile d'interface utilisateur bien équilibrée n'est pas une mince affaire. Heureusement, les développeurs ont de grands avantages à attendre. Pour la première fois, les développeurs de Xamarin alias MAUI obtiennent les outils CLI (Interface de ligne de commande), en ligne avec le reste du .NET moderne. Cela signifierait des moyens visuels et en ligne de commande de faire des choses courantes, comme des projets d'échafaudage, la résolution de dépendances, la création et le déploiement sur des appareils / simulateurs. La prise en charge des outils CLI a deux grandes implications:

  1. Utilisation des outils ' build dotnet ' sur MSBuild
  2. Prise en charge de Visual Studio Code

Oui, vous avez bien lu. En plus de Visual Studio sur Windows et Visual Studio pour Mac sur MacOS, les développeurs pourraient exploiter VS Code pour la création d'applications .NET MAUI. De nombreux développeurs préféreraient la légèreté de VS Code en tant qu'éditeur, avec tous les avantages de l'intelligence de code et du déploiement d'applications via les commandes CLI / la palette de commandes VS Code.

Besoin de mettre à niveau les applications Xamarin.Forms vers .NET MAUI? Ce ne sera probablement pas un processus difficile, avec des outils de type try-convert promis. Deux grands changements d'espace de noms à garder à l'esprit:

Xamarin.Forms -> System.MAUI

Xamarin Essentials -> System.Devices

Un autre énorme avantage promis de .NET MAUI serait un outil simplifié pour la productivité des développeurs . Même si vous créez une application multiplateforme véritablement native, votre .NET MAUI serait un seul point d'inspiration – un seul projet de style SDK. Finis les projets spécifiques à la plate-forme pour gérer les images / ressources / polices pour chaque plate-forme cible. Les projets NET Maui les partageraient tous et seraient simplement plus intelligents lors des générations. Target Framework Monikers (TFM) dicterait les plates-formes prises en charge et le multi-ciblage aiderait à organiser le code spécifique à la plate-forme. .NET MAUI arborera un projet unique pour toutes les plates-formes prises en charge – simple à déployer de manière transparente sur iOS / Android / Windows / MacOS et plus encore.

 MauiSingleProject "title =" MauiSingleProject "data-openoriginalimageonclick =" true "/> </a></p>
<h2 id= Road to Hana

L'une des plus belles régions de Maui est Hana, une terre mythique de montagnes , cascades, histoire et légendes. Et la meilleure partie de la visite de Hana est souvent le voyage – la route de Hana est une incroyable promenade à travers des routes tordues, des vues à couper le souffle et un temps de forêt tropicale luxuriante. Bien sûr, cela prend du temps et vous serez séduit

.NET MAUI est très prometteur vers un cadre d'interface utilisateur cohérent de premier ordre pour les développeurs .NET afin de créer des applications natives multiplateformes pour mobiles et ordinateurs de bureau. Le terrain élevé a cependant un prix – ce serait une route longue et parfois douloureuse vers le sommet. .NET MAUI est livré avec .NET 6, ce qui fait les premiers jours actuels. Et bien sûr, .NET MAUI serait entièrement open source. Tout en développant un cadre d'interface utilisateur avec une transparence totale citées par la communauté des développeurs, il y a beaucoup d'opinions à prendre en considération dans le monde open source. Pour que .NET MAUI réponde aux besoins de chacun, certaines décisions architecturales devraient être prises en cours de route afin de mettre en évidence l'équilibre entre le respect des opinions de la communauté et la rationalisation des outils pour la productivité des développeurs.

Un point très litigieux est le XAML (langage de balisage d'application extensible) – sans doute la façon la plus populaire de définir l'arborescence visuelle de l'interface utilisateur dans .NET MAUI. En tant qu'évolution de Xamarin.Forms, C # / XAML semble très naturel dans MAUI et offrirait aux développeurs le même gain de productivité avec des outils de qualité. Cependant, la saveur spécifique du XAML est en cours de discussion . Il s'avère que Xamarin.Forms utilise un dialecte de XAML qui s'adresse fortement au développement mobile, et en tant que tel est différent des XAML traditionnels plus riches en fonctionnalités alimentant les plates-formes WPF / UWP / WinUI. Il existe des demandes de la communauté pour fusionner les saveurs XAML, mais ce ne sera probablement pas une tâche facile. Il y a également des questions ouvertes que l'équipe .NET MAUI doit aborder concernant la stabilité, les différences d'outils avec d'autres écosystèmes XAML et la facilité de personnalisation des composants d'interface utilisateur personnalisés. De nombreux outils et conseils doivent également être construits autour du modèle C # MVU ou potentiellement de la manière Blazor de rendre un arbre visuel. Le code doit être moins détaillé et la documentation doit être solide. La bonne nouvelle est que ce sont des jours très précoces pour .NET MAUI: la communauté et les équipes d'ingénierie ont le temps de bien faire les choses. Comme nous le montre Hana Maui, ce n'est parfois pas seulement la destination – le voyage peut être tout aussi enrichissant.

Lahaina Sunrise & Sunsets

Maui fonctionne à l'heure de l'île. Le sentiment de panique est souvent remplacé par un ralentissement pour bien faire les choses. Et peu d'autres expériences capturent l'esprit hawaïen plus que de regarder les levers et couchers de soleil depuis le village de Lahaina. Alors que les douces vagues de l'océan se succèdent sur des plages de sable doux et qu'une brise fraîche détend votre âme, vous vous rendez compte qu'il est normal de lâcher prise aujourd'hui. Le lever du soleil de demain apporte de nouvelles promesses et un nouvel élan pour la vie.

Au cours de la dernière décennie, les technologies Xamarin ont été adorées par d'innombrables développeurs. Pour les développeurs .NET, Xamarin a toujours fourni l'un des moyens les plus simples de créer des applications multiplates-formes et de partager du code. Sans la magie de Mono sous les couvertures et la portée de la plate-forme Xamarin, les développeurs .NET n'auraient pas pu prendre leur place de code, comme iOS, Android, Tizen, WPF, MacOS, Linux et plus encore. Bien sûr, il y a eu des problèmes de plate-forme / d'outillage; mais armés d'un engagement à faire réussir les développeurs, les équipes Xamarin et la communauté se sont toujours mobilisées pour améliorer les choses. Avec l'avènement de .NET MAUI, certains pourraient être tristes de voir le coucher du soleil pour la marque bien-aimée Xamarin.

Mais n'ayez crainte, le prochain lever de soleil va être meilleur. En témoignage des efforts d'ingénierie de Xamarin, une grande partie de Xamarin est désormais intégrée au cœur de .NET et offre plus de confiance aux développeurs.

Xamarin.iOS -> .NET pour iOS

Xamarin.Android -> .NET pour Android

Étant donné que le Xamarin natif est essentiellement une cale sur les API natives pour utiliser le code C # partagé, rien n'a besoin de beaucoup changer – utilisez simplement dans .NET et avec les outils préférés. Xamarin.Forms évolue en .NET MAUI et gagne un support de plateforme supplémentaire. En plus d'iOS / Android, les développeurs pourront créer des applications de bureau natives pour Windows et MacOS, résultat de la maturité des outils et de la confiance dans le support de la plateforme.

 MauiPlatformSupport "title =" MauiPlatformSupport "data-method =" ResizeAndCropResizeAndCropArguments "data-douanizemethodproperties =" {"Width": "500", "Height": "471", "ScaleUp": false, "Quality": "" Élevé "}" />  <h2 id= Le 50e État

Hawaï est devenu le 50e État des États-Unis d'Amérique en 1959. Partie de la sous-région polynésienne d'Océanie, Hawaï est le seul État insulaire des États-Unis. Outre l'avantage stratégique dans l'océan Pacifique, Hawaï le statut d'État a assoupli les conséquences pour les Américains – la liberté de mouvement pour les habitants des îles et du continent. Aucun passeport nécessaire. La monnaie, la langue et le mode de vie général sont les mêmes. Ce à quoi vous êtes habitué ne fonctionne qu'avec un flair supplémentaire.

De même, .NET MAUI n'est qu'une partie de .NET. Tous vos outils fonctionnent. Toutes vos expériences de développement se poursuivent. L'entonnoir est élargi pour inclure davantage de façons de créer la pile d'interface utilisateur multiplateforme.

Utiliser quelque chose dans Xamarin aujourd'hui et avoir des inquiétudes pour demain? Et si vous utilisiez des composants d'interface utilisateur performants, comme Telerik UI pour Xamarin ? Se détendre. Tout cela évoluera et fonctionnera de manière transparente dans .NET MAUI. Vous aimez le modèle de composant Blazor pour créer des applications mobiles multiplateformes natives? L'interface utilisateur de Telerik pour Xamarin propose déjà des liaisons Blazor expérimentales pour une flexibilité de rendu. Tout de l'interface utilisateur Telerik pour Xamarin fonctionnera demain, mais en mieux.

 Relief "title =" Relief "/>  <h2 id= L'esprit Aloha

Aloha est le mot hawaïen pour amour, affection, paix, compassion et miséricorde. Bien qu'il soit couramment utilisé comme simple salutation, Aloha a une signification culturelle et spirituelle plus profonde pour les Hawaïens indigènes, pour qui le terme est utilisé pour définir une force qui maintient l'existence.

.NET MAUI devrait être accueilli dans le même esprit Aloha. Personne ne déplace votre fromage. Les outils et le support de la plate-forme s'améliorent. Les développeurs bénéficient d'une plus grande flexibilité. .NET MAUI est loin – les aperçus commenceront à apparaître fin 2020 avec les derniers bits en 2021. Mais le moment est venu de s'engager. La communauté des développeurs et les équipes .NET MAUI ont une belle piste pour bien faire les choses avant le décollage. Détendons-nous tous et espérons un avenir meilleur. Aloha!

PS: La plupart des images sont une gracieuseté de Microsoft.





Source link