Merci d'avoir envoyé votre demande ! Un membre de notre équipe vous contactera sous peu.
Merci d'avoir envoyé votre réservation ! Un membre de notre équipe vous contactera sous peu.
Durée 14 heures
Plan du cours
1. Introduction à .NET MAUI et au développement multiplateforme
- Architecture de .NET MAUI et cycle de vie des applications
- Structure de projet multiplateforme et architecture à projet unique
- Compréhension des gestionnaires (handlers), des contrôles, des mises en page et des abstractions de plateforme
- Code spécifique à la plateforme et compilation conditionnelle
- Gestion des dépendances et paquets NuGet
- Travail avec Visual Studio et le CLI .NET
- Construction et exécution d'applications sur Android, iOS, Windows et macOS
- Exercice : Créer et configurer une application .NET MAUI multiplateforme
2. Techniques et modèles avancés de MVVM
- Rappel du MVVM et de la séparation des préoccupations
- Techniques avancées de liaison de données (data binding)
- Liaisons compilées et performances de liaison
INotifyPropertyChangedet collections observables- Commandes, commandes asynchrones et paramètres de commande
- CommunityToolkit.Mvvm et générateurs de code (source generators)
- ViewModels, services et gestion de l'état
- Navigation et ViewModels prenant en compte la navigation
- Gestion de la validation et de l'état de l'application
- Exercice : Construire une application MVVM multi-pages avec validation et opérations asynchrones
3. Injection de dépendances et architecture des applications
- Injection de dépendances intégrée à .NET
- Durées de vie des services : éphémère, par portée (scoped) et unique (singleton)
- Enregistrement de services spécifiques à la plateforme et partagés
- Injection par constructeur et composition de services
- Inversion de dépendances et découplage
- Modèles de repository et de service
- Gestion des dépendances applicatives globales
- Configuration et services spécifiques à l'environnement
- Exercice : Réécrire une application en utilisant l'injection de dépendances
4. Approfondissement de la personnalisation et de l'extension de .NET MAUI
- Compréhension des gestionnaires (handlers) et de l'architecture de rendu de .NET MAUI
- Gestionnaires personnalisés et implémentations spécifiques à la plateforme
- Cartographie des contrôles .NET MAUI vers les contrôles natifs de la plateforme
- Extension des contrôles existants
- Création de contrôles personnalisés
- Comportements et API spécifiques à la plateforme
- Effets, comportements et extensions d'interface réutilisables
- Quand utiliser les gestionnaires, les comportements, les effets ou les contrôles personnalisés
- Exercice : Créer et intégrer un contrôle multiplateforme personnalisé
5. Développement de composants et de bibliothèques réutilisables
- Conception de composants d'interface réutilisables
- Création de contrôles personnalisés et de ContentViews
- Paramétrage des composants et liaison de données
- Création de comportements et de convertisseurs réutilisables
- Organisation de la fonctionnalité partagée de l'application
- Création de bibliothèques de classes .NET pour les applications MAUI
- Emballage et distribution de composants réutilisables
- Fondamentaux des paquets NuGet
- Exercice : Construire une bibliothèque de composants réutilisables
6. Interface utilisateur/Expérience utilisateur (UI/UX) avancée, mises en page et animations
- Mises en page avancées et conception d'interface responsive
- Interfaces adaptatives pour téléphones, tablettes et ordinateurs de bureau
- ressources dynamiques et mise en forme
- Dictionnaires de ressources et gestion des thèmes
- Thèmes clair et sombre
- États visuels et interface pilotée par l'état
- Animations et transitions avancées
- Reconnaissance des gestes
- Dessin personnalisé et graphisme
- Prise en compte de l'accessibilité
- Exercice : Créer une interface MAUI responsive et animée
7. Gestion des scénarios de données complexes
- Consommation d'API REST depuis .NET MAUI
- Clients HTTP et accès asynchrone aux données
- Sérialisation et désérialisation JSON
- Gestion des erreurs et stratégies de nouvelle tentative
- Persistance des données locales
- SQLite et bases de données locales
- Modèles de repository pour l'accès aux données
- Conception d'applications fonctionnant prioritairement hors ligne
- Synchronisation entre données locales et distantes
- Stratégies de résolution de conflits
- Mise en cache et invalidation du cache
- Exercice : Implémenter une application orientée données capable de fonctionner hors ligne
8. Réglage et optimisation des performances
- Identification des goulets d'étranglement de performance
- Optimisation du temps de démarrage
- Gestion de la mémoire et utilisation des ressources
- Réduction des mises à jour inutiles de l'interface utilisateur
- Optimisation des liaisons et du rendu des collections
- Chargement et mise en cache efficaces des images
- Programmation asynchrone et évitement du blocage du fil de l'interface utilisateur
- Traitement en arrière-plan
- Réduction de la taille de l'application
- Gestion des fuites de mémoire et des cycles de vie des objets
- Exercice : Profiler et optimiser une application MAUI volontairement inefficace
9. Techniques avancées de débogage et de profilage
- Débogage des applications multiplateforme
- Points d'arrêt, surveillance (watches) et gestion des exceptions
- Diagnostic des problèmes d'interface et de cycle de vie
- Journalisation et diagnostic structuré
- Outils de diagnostic et de profilage .NET
- Profilage du CPU et de la mémoire
- Détection des fuites de mémoire
- Enquête sur le rendu lent de l'interface utilisateur
- Débogage des problèmes spécifiques à la plateforme
- Utilisation des diagnostics sur appareil et émulateur
- Exercice : Diagnostiquer et résoudre les problèmes de performance et d'exécution courants
10. Modèles d'architecture et meilleures pratiques pour les applications de grande envergure
- Choix d'une architecture applicative appropriée
- Concepts de l'architecture propre (Clean Architecture)
- Architecture par couches
- Séparation de l'interface utilisateur, de la logique métier et de l'accès aux données
- Abstractions de repository et de service
- Principes SOLID dans les applications MAUI
- Gestion de l'état de l'application
- Organisation du projet par fonctionnalités
- Conception d'applications modulaires
- Considérations relatives à l'évolutivité et à la maintenabilité
- Exercice : Concevoir l'architecture d'une application MAUI de production
11. Stratégies de test avancées
- Test unitaire des ViewModels et des services
- Test de la logique métier indépendamment de l'interface utilisateur
- Simulation (mocking) des dépendances
- Test du code asynchrone
- Test de la navigation et de l'état de l'application
- Concepts de test d'interface et d'intégration
- Architecture applicative testable
- Considérations relatives à l'intégration continue
- Exercice : Créer une suite de tests pour une application MAUI
12. Sécurité dans les applications .NET MAUI
- Architecture d'application sécurisée
- Stockage sécurisé des informations sensibles
- Authentification et autorisation
- Gestion des jetons (tokens)
- Considérations relatives à la sécurité des API
- Protection des données stockées localement
- Communication sécurisée avec les services backend
- Gestion des identifiants et des secrets
- Menaces de sécurité courantes pour les applications mobiles
- Exercice : Implémenter une authentification sécurisée et le stockage des identifiants
13. Déploiement et distribution des applications
- Construction d'applications pour différentes plateformes
- Configurations Release par rapport à Debug
- Signature d'applications et certificats
- Emballage des applications Android
- Concepts de déploiement des applications iOS
- Emballage des applications Windows
- Gestion des versions et des releases
- Configuration spécifique à l'environnement
- Publication d'applications dans les magasins d'applications
- Considérations relatives à l'intégration/continuation continues (CI/CD) pour les projets MAUI
- Exercice : Préparer une application MAUI pour le déploiement en production
14. Dernières fonctionnalités de .NET MAUI et de Visual Studio
- Améliorations et changements récents de .NET MAUI
- Nouveaux contrôles, API et capacités de développement
- Améliorations des gestionnaires (handlers) et de l'intégration de plateforme
- Outils de Visual Studio et fonctionnalités de productivité
- Pratiques de développement moderne .NET
- Évaluation des bibliothèques tierces et des fonctionnalités du MAUI Community Toolkit
- Considérations relatives à la migration et à la mise à niveau
- Maintenance des applications au fil des versions .NET
15. Exercice de synthèse : Construction d'une application .NET MAUI prête pour la production
- Définir les exigences et l'architecture de l'application
- Concevoir la structure MVVM
- Configurer l'injection de dépendances
- Implémenter des composants d'interface réutilisables
- Se connecter aux sources de données distantes et locales
- Ajouter la mise en cache et la synchronisation
- Implémenter la validation et la gestion des erreurs
- Appliquer les optimisations de performance
- Ajouter la sécurité et l'authentification
- Tester les fonctionnalités critiques de l'application
- Préparer l'application pour le déploiement
16. Résumé et prochaines étapes
- Rappel des concepts avancés de .NET MAUI
- Écueils courants en matière d'architecture et de performance
- Pratiques de développement recommandées
- Ressources pour approfondir ses connaissances
- Planification des prochaines étapes vers un développement MAUI prêt pour la production
- Questions et réponses et discussion des projets des participants
Pré requis
- Maîtrise du langage de programmation C#
- Bonne compréhension des concepts de la programmation orientée objet (POO)
- Familiarité avec le cadre .NET
Public cible
- Développeurs
Nos clients témoignent (3)
Tout va bien.
Adrian Rybka - SEOyon
Formation - Flutter Development Bootcamp with Dart
Traduction automatique
Informations supplémentaires très utiles
Grzegorz - Comp S.A.
Formation - BLoC Pattern
Traduction automatique
Développer l'application d'authentification utilisateur et l'activité Kahoot (j'ai veillé à bien assimiler les cours de formation :) et c'est amusant !)
Jhoanne - Pag-IBIG Fund
Formation - .NET MAUI Fundamentals
Traduction automatique