Prenez contact avec nous

Plan du cours

1. Introduction à .NET MAUI et au développement multiplateforme

  • Architecture de .NET MAUI et cycle de vie de l'application
  • Structure de projet multiplateforme et architecture monoprojet
  • Compréhension des 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 packages NuGet
  • Utilisation de Visual Studio et de l'interface en ligne de commande .NET
  • Compilation 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 MVVM avancés

  • Rappel sur MVVM et séparation des préoccupations
  • Techniques avancées de liaison de données
  • Liaisons compilées et performance des liaisons
  • INotifyPropertyChanged et collections observables
  • Commandes, commandes asynchrones et paramètres de commandes
  • CommunityToolkit.Mvvm et générateurs de source
  • ViewModels, services et gestion de l'état
  • Navigation et ViewModels conscients de la navigation
  • Gestion de la validation et de l'état de l'application
  • Exercice : Construire une application MVVM multipage avec validation et opérations asynchrones

3. Injection de dépendances et architecture de l'application

  • Injection de dépendances intégrée à .NET
  • Cycles de vie des services : transitoire, scopé et singleton
  • Enregistrement des 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 dépôt (Repository) et de service
  • Gestion des dépendances applicatives globales
  • Configuration et services spécifiques à l'environnement
  • Exercice : Refactoriser une application à l'aide de l'injection de dépendances

4. Approfondissement de la personnalisation et de l'extension de .NET MAUI

  • Compréhension des handlers et de l'architecture de rendu de .NET MAUI
  • Handlers personnalisés et implémentations spécifiques à la plateforme
  • Mappage des contrôles .NET MAUI sur les contrôles natifs de la plateforme
  • Extension des contrôles existants
  • Création de contrôles personnalisés
  • Comportement et API spécifiques à la plateforme
  • Effets, comportements et extensions d'interface utilisateur réutilisables
  • Quand utiliser les handlers, les comportements, les effets ou les contrôles personnalisés
  • Exercice : Créer et intégrer un contrôle multiplateforme personnalisé

5. Création de composants et bibliothèques réutilisables

  • Conception de composants d'interface utilisateur réutilisables
  • Création de contrôles et de ContentViews personnalisés
  • Paramétrage des composants et liaison de données
  • Création de comportements et convertisseurs réutilisables
  • Organisation des fonctionnalités applicatives partagées
  • Création de bibliothèques de classes .NET pour les applications MAUI
  • Empaquetage et distribution de composants réutilisables
  • Notions fondamentales des packages NuGet
  • Exercice : Construire une bibliothèque de composants réutilisables

6. Interface utilisateur/Expérience utilisateur, mises en page et animations avancées

  • Mises en page avancées et conception d'interfaces utilisateur responsives
  • Interfaces adaptatives pour téléphones, tablettes et ordinateurs de bureau
  • Ressources dynamiques et stylage
  • Dictionnaires de ressources et gestion des thèmes
  • Thèmes clair et sombre
  • États visuels et interface utilisateur basée sur les états
  • Animations et transitions avancées
  • Reconnaissance des gestes
  • Dessin personnalisé et graphiques
  • Considérations d'accessibilité
  • Exercice : Créer une interface MAUI responsive et animée

7. Traitement des scénarios de données complexes

  • Consommation d'API REST depuis .NET MAUI
  • Clients HTTP et accès aux données asynchrones
  • Sérialisation et désérialisation JSON
  • Gestion des erreurs et stratégies de nouvelle tentative
  • Persistance locale des données
  • SQLite et bases de données locales
  • Modèles de dépôt (Repository) pour l'accès aux données
  • Conception d'applications privilégiant le mode hors ligne
  • Synchronisation entre données locales et distantes
  • Stratégies de résolution des conflits
  • Mise en cache et invalidation du cache
  • Exercice : Implémenter une application pilotée par les données fonctionnant hors ligne

8. Optimisation des performances et réglage

  • Identification des goulots 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 efficace des images et mise en cache
  • Programmation asynchrone et évitement du blocage du thread d'interface utilisateur
  • Traitement en arrière-plan
  • Réduction de la taille de l'application
  • Gestion des fuites 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 profiling

  • Débogage des applications multiplateformes
  • Points d'arrêt, fenêtres d'inspection et gestion des exceptions
  • Détection des problèmes d'interface utilisateur et de cycle de vie
  • Journalisation et diagnostic structuré
  • Outils de diagnostic et de profiling .NET
  • Profiling CPU et mémoire
  • Détection des fuites mémoire
  • Investigation du lent rendu 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 des problèmes courants de performance et d'exécution

10. Modèles d'architecture et bonnes pratiques pour les applications à grande échelle

  • Choix d'une architecture applicative appropriée
  • Concepts de Clean Architecture
  • Architecture en couches
  • Séparation de l'interface utilisateur, de la logique métier et de l'accès aux données
  • Abstractions de dépôt (Repository) et de service
  • Principes SOLID dans les applications MAUI
  • Gestion de l'état de l'application
  • Organisation du projet basée sur les fonctionnalités
  • Conception modulaire de l'application
  • Considérations sur l'évolutivité et la maintenabilité
  • Exercice : Concevoir l'architecture d'une application MAUI à l'échelle de la 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
  • Mockage des dépendances
  • Test du code asynchrone
  • Test de la navigation et de l'état de l'application
  • Concepts de test d'interface utilisateur et d'intégration
  • Architecture applicative testable
  • Considérations sur l'intégration continue
  • Exercice : Créer une suite de tests pour une application MAUI

12. Sécurité dans les applications .NET MAUI

  • Architecture applicative sécurisée
  • Stockage sécurisé des informations sensibles
  • Authentification et autorisation
  • Gestion des jetons (tokens)
  • Considérations sur la sécurité des API
  • Protection des données stockées localement
  • Communication sécurisée avec les services d'arrière-plan
  • Gestion des identifiants et des secrets
  • Risques de sécurité courants des applications mobiles
  • Exercice : Implémenter l'authentification sécurisée et le stockage des identifiants

13. Déploiement et distribution des applications

  • Compilation d'applications pour différentes plateformes
  • Configurations de version Release et Debug
  • Signature des applications et certificats
  • Empaquetage des applications Android
  • Concepts de déploiement des applications iOS
  • Empaquetage des applications Windows
  • Versioning et gestion des releases
  • Configuration spécifique à l'environnement
  • Publication d'applications dans les boutiques d'applications
  • Considérations 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 Visual Studio

  • Améliorations et changements récents de .NET MAUI
  • Nouveaux contrôles, API et capacités de développement
  • Améliorations des handlers et de l'intégration de plateforme
  • Outillage Visual Studio et fonctionnalités de productivité
  • Pratiques modernes de développement .NET
  • Évaluation des bibliothèques tierces et des fonctionnalités du MAUI Community Toolkit
  • Considérations sur la migration et la mise à niveau
  • Maintenance des applications entre les versions .NET

15. Exercice de synthèse : Construction d'une application .NET MAUI prête pour la production

  • Définition des exigences et de l'architecture de l'application
  • Conception de la structure MVVM
  • Configuration de l'injection de dépendances
  • Implémentation de composants d'interface utilisateur réutilisables
  • Connexion aux sources de données distantes et locales
  • Ajout de la mise en cache et de la synchronisation
  • Implémentation de la validation et de la gestion des erreurs
  • Application d'optimisations de performance
  • Ajout de la sécurité et de l'authentification
  • Test des fonctionnalités critiques de l'application
  • Préparation de l'application pour le déploiement

16. Résumé et prochaines étapes

  • Révision des concepts avancés de .NET MAUI
  • Pièges courants d'architecture et de performance
  • Pratiques de développement recommandées
  • Ressources d'apprentissage supplémentaires
  • Planification des prochaines étapes vers un développement MAUI prêt pour la production
  • Questions-réponses et discussion des projets des participants

Pré requis

  • Maîtrise du langage de programmation C#
  • Bonne compréhension des concepts de programmation orientée objet (POO)
  • Familiarité avec le framework .NET

Public

  • Développeurs
 14 Heures

Nombre de participants


Prix par participant

Nos clients témoignent (3)

Cours à venir

Catégories Similaires