Passer au contenu du pied de page
Iron Academy Logo
Cadre C#

Introduction à la plateforme Uno : Développement multiplateforme entièrement en C#

Tim Corey
53m 19s

Pendant des années, le développement multiplateforme C# a été un objectif que de nombreux développeurs rêvaient d'atteindre - écrire du code une seule fois et le déployer partout. Qu'il s'agisse d'applications mobiles, de logiciels de bureau, d'expériences web ou même d'appareils embarqués, l'idée d'utiliser une base de code unique pour créer et maintenir des applications multiplateformes constitue un gain de temps considérable.

Dans sa vidéo complète, "Intro To Uno Platform - Full Cross-Platform C# Development", Tim Corey nous explique pas à pas comment la plateforme Uno fait de ce rêve une réalité pour les développeurs C#. Tim montre comment installer Uno, créer des projets dans Visual Studio, configurer l'environnement .NET framework et exécuter des applications sur Windows, Android, iOS, Linux et le web. En cours de route, il explique les principales fonctionnalités, souligne les points sur lesquels Uno simplifie le travail des développeurs multiplateformes et fait même la démonstration d'outils haut de gamme tels que Hot Design.

Nous allons nous plonger dans la vidéo, en suivant attentivement les explications de Tim, pour voir comment Uno permet de créer des applications mobiles modernes et bien plus encore en utilisant des bibliothèques open source et la puissance de .NET.

Qu'est-ce que la plateforme Uno ?

Tim commence la vidéo en résumant la mission d'Uno : "Construire une fois et déployer partout - c'est le rêve, et la plate-forme Uno fait de ce rêve une réalité"

Uno est plus qu'un simple cadre de travail ou une boîte à outils. Comme l'explique Tim, "Il s'agit d'une plateforme complète" permettant aux développeurs de créer des applications multiplateformes à partir d'une base de code unique. Uno prend en charge Windows, Android, iOS, Linux, macOS et WebAssembly, ce qui permet à un projet d'atteindre tous les principaux environnements - des ordinateurs de bureau aux appareils mobiles et même le web.

Tim s'occupe immédiatement des coûts. Il assure les téléspectateurs qu'Uno est un projet libre et gratuit sous la licence Apache 2.0 : "Tout ce dont vous avez besoin pour construire et déployer votre application est gratuit" La plateforme de base est entièrement gratuite pour tous les utilisateurs - particuliers, petites équipes et même grandes entreprises.

Le seul outil payant est Hot Design, un concepteur d'interface utilisateur qui accélère la création d'applications, mais il est facultatif. Tim fait remarquer que le modèle de durabilité d'Uno est similaire à celui de Red Hat : les outils premium avancés et le soutien des entreprises financent la fondation open source.

Installation de Uno dans Visual Studio

Tim explique comment installer Uno dans Visual Studio. Il se rend dans le menu Extensions, recherche "Uno Platform" et l'installe.

Il explique pourquoi cet installateur est important : "Le développement multiplateforme n'est pas facile", dit-il. La création d'applications pour Android, iOS, Windows, Linux et le web implique la manipulation de différents SDK, émulateurs et systèmes de déploiement. Uno simplifie les parties compliquées :

"Ce programme d'installation a fait un excellent travail en faisant cela pour vous", dit Tim, parce qu'il installe également les composants nécessaires comme .NET MAUI, les émulateurs et l'outillage en arrière-plan.

Créer un nouveau projet Uno

Une fois Uno installé, Tim lance un projet dans Visual Studio : Fichier > Nouveau projet > Uno Platform App. Il le nomme "UnoDemo", puis souligne une étape de configuration importante :

"Vous devez cocher cette case - 'Placer la solution et le projet dans le même répertoire' - ou vous obtiendrez une erreur."

À partir de là, Uno lance son puissant assistant de projet, que Tim qualifie d'"incroyable"

Explorer l'assistant de projet

Tim consacre du temps à l'assistant, car c'est là que les développeurs multiplateformes personnalisent la base de leurs applications.

Version du .NET Framework

Uno prend en charge .NET 9, qui, selon Tim, a été choisi parce qu'il offrait des fonctionnalités dont ils avaient besoin au-delà de .NET 8.

Plateformes

Il sélectionne Android, iOS, WebAssembly et desktop. Uno utilise désormais le rendu Skia pour plus de rapidité. Tim conseille de toujours inclure l'assistance bureautique, même si l'accent est mis sur les applications mobiles :

"Il est beaucoup plus rapide de développer sur un ordinateur de bureau car vous n'avez pas besoin d'utiliser des émulateurs"

Modèles d'interface utilisateur et balisage

Tim aborde le MVVM (familier aux développeurs WPF) et le plus récent MVU/MVUX (Model-View-Update Extended). De nombreux exemples d'Uno utilisent MVUX. Pour le balisage, vous pouvez choisir XAML ou C#.

<Tim suggère de choisir XAML, car l'outil Hot Design d'Uno ne fonctionne qu'avec ce langage.

Thèmes, extensions et services

Les développeurs peuvent choisir les thèmes Material ou Fluent, activer le mode clair/foncé et même ajouter l'injection de dépendances et la localisation.

Tim note que si vous choisissez des options telles que Refit ou Kyota pour les appels HTTP, Uno intègre des échantillons de code source dans le projet, en vous montrant comment ces éléments fonctionnent.

"Ce constructeur est super utile parce qu'il vous donne des exemples de toutes ces choses différentes pour commencer."

Première exécution et configuration de l'environnement

Lorsque Tim clique sur Create, le projet se construit et Visual Studio signale les problèmes d'environnement. C'est là que l'outil Uno Check d'Uno se distingue.

"Copiez cette commande, exécutez-la et continuez à l'exécuter jusqu'à ce qu'elle ne trouve plus d'erreurs. Il répare ce qu'il peut. "

Uno Check prend en charge l'installation des SDK, la configuration d'Android Studio et la configuration des émulateurs. Tim fait l'éloge de cette automatisation :

"Il y a beaucoup de complexité ici - et ils prennent toute cette complexité et la nettoient"

Exécution de l'application et utilisation de Hot Reload

Tim passe à la cible de bureau (la plus rapide pour les tests) et exécute l'application. La démo générée comporte une zone de texte et un bouton - simple mais fonctionnel.

Il fait une démonstration de Hot Reload - la fonction gratuite qui vous permet de modifier le code de l'interface utilisateur dans XAML et de voir instantanément les mises à jour :

"J'ai remplacé 'Enter your name' par 'Enter your given name', j'ai appuyé sur 'save', et voilà, c'est en direct"

Ce flux de travail transparent représente un gain de productivité important pour les développeurs travaillant sur plusieurs plateformes.

Explorer Hot Design - Facultatif mais puissant

Ensuite, Tim clique sur l'icône de la flamme, ce qui permet d'activer la conception à chaud.

"C'est la mise à jour payante - vous n'êtes pas obligé de l'avoir, mais c'est bien de l'avoir"

Hot Design vous permet de glisser et de déposer des éléments d'interface utilisateur sur une application en cours d'exécution, de modifier leurs propriétés et de voir ces modifications reflétées directement dans le code source.

Tim fait glisser un TextBlock, le configure pour qu'il dise "Hello World" et change sa couleur. Il souligne :

"Hot Design ne se contente pas de prévisualiser - il modifie votre code réel"

Il montre également comment Hot Design gère les mises en page réactives pour les appareils mobiles, le changement de thème clair/foncé et les configurations de liaison avancées, tout cela pendant que le projet est en cours d'exécution.

Tim résume la valeur du projet :

"Si cela permet d'économiser ne serait-ce qu'une heure par mois, cela vaut 39 dollars. Cela permettra d'économiser bien plus que cela"

Voir le code source généré

Tim inspecte le code généré par Uno. Il montre comment le projet est basé sur MVUX, avec des modèles liés à des pages, et met en évidence :

  • Dossier Services - comprend des exemples de code HTTP et de mise en cache.

  • Ressources de localisation - échantillons de traduction pour l'anglais, l'espagnol, le français et le portugais.

  • différences csproj - Uno utilise son propre UNO.SDK au lieu du SDK par défaut de Microsoft.

Tim partage une astuce de développeur : pendant le débogage, vous pouvez commenter tout ce qui n'est pas la cible de bureau pour accélérer les reconstructions.

Compréhension des plateformes et du code personnalisé

Tim explore le dossier Plates-formes, qui contient du code spécifique aux plates-formes Android, iOS et autres :

"Pour l'essentiel, votre code fonctionnera sur toutes les plateformes, mais il y a certaines choses que vous devrez écrire uniquement pour Android ou iOS - et celles-ci vont ici."

Grâce à cette flexibilité, Uno prend en charge 95 % du travail multiplateforme, tout en vous permettant d'écrire un code source adapté à des appareils mobiles uniques ou à des appareils intégrés, le cas échéant.

Au-delà de Visual Studio - VS Code et Rider

Uno n'est pas lié à Visual Studio. Tim montre comment les développeurs multiplateformes peuvent utiliser VS Code ou JetBrains Rider, grâce à l'assistant de projet en ligne de Uno sur new.platform.uno.

"Vous pouvez y configurer un projet, générer une commande CLI et échafauder le même projet de départ en dehors de Visual Studio"

Uno est donc flexible pour les développeurs travaillant sur toutes sortes de configurations - des amateurs expérimentant sur des ordinateurs portables Linux aux équipes développant des applications mobiles de production sur des machines Windows.

Enveloppez le tout : Une plateforme qui s'étend vraiment à tous les domaines

Tim termine la vidéo en résumant la portée d'Uno :

"Il se déploie sur Windows, Mac, Linux, WebAssembly, iOS et Android. Votre code C# s'exécute pratiquement partout. "

Uno permet aux développeurs d'écrire des applications avec une base de code unique et de les exécuter sur plusieurs plateformes - des applications mobiles sur iOS et Android, aux logiciels de bureau sur Windows et Linux, en passant par les applications web dans le navigateur.

Tim encourage tout le monde à essayer Uno et à partager ce qu'ils aimeraient voir exploré par la suite : "Il y a tellement de choses à découvrir que j'ai hâte de vous les montrer à tous"

Conclusion

En suivant la vidéo de Tim Corey sur la plateforme Uno, on peut se faire une idée précise de la manière dont ce projet open source simplifie le développement multiplateforme. En utilisant des outils .NET familiers comme Visual Studio et en exploitant des bibliothèques open source, les développeurs peuvent créer des applications mobiles, des logiciels de bureau et des expériences web avec une seule base de code, ce qui leur permet de gagner du temps, de réduire la complexité et de fournir plus rapidement des applications à plusieurs plateformes.

De ses outils de base gratuits tels que Hot Reload à son booster de productivité optionnel Hot Design, Uno offre un écosystème complet pour le développement multiplateforme C# moderne - un écosystème qui fonctionne pour les développeurs individuels, les équipes et même les grandes organisations qui créent des applications mobiles et plus encore.

Hero Worlddot related to Introduction à la plateforme Uno : Développement multiplateforme entièrement en C#
Hero Affiliate related to Introduction à la plateforme Uno : Développement multiplateforme entièrement en C#

Gagnez plus en partageant ce que vous aimez

Vous créez du contenu pour les développeurs travaillant avec .NET, C#, Java, Python ou Node.js ? Transformez votre expertise en revenu supplémentaire !

Équipe de soutien Iron

Nous sommes en ligne 24 heures sur 24, 5 jours sur 7.
Chat
Email
Appelez-moi