Accueil / 4A .NET – Certification ASP.NET MVC délivrée par Microsoft (Examen 70-486) (exclusif FAFIEC) – 28147
4A .NET – Certification ASP.NET MVC délivrée par Microsoft (Examen 70-486) (exclusif FAFIEC) – 28147
Objectifs
- Identifier les compétences et connaissances nécessaires à la préparation de l’examen
- Comprendre le type et le format des questions qui composeront l’examen
- S’entraîner à répondre aux questions types, tout en révisant les principaux thèmes abordés dans l’examen
- Identifier les conseils et techniques permettant de faciliter le processus même de l’examen
Prérequis
- Connaitre les fondamentaux de la programmation .Net
- Avoir effectué du développement d’applications .Net
Public
- Participants souhaitant passer un examen .Net
Moyens pédagogiques
- Passage d’un examen blanc (en anglais) à partir d’une sélection de 50 questions portant sur le sujet
- Correction des réponses et questions sur chacun des points techniques abordés
- Techniques et conseils pour le passage de l’examen
- Présentation et prise en main de l’outil de préparation aux examens
Programme
-
Conception de l’architecture d’application (15 à 20%) :
- Plan des couches d’application
- Planifier l’accès aux données ; planifier la séparation des préoccupations, l’utilisation appropriée des modèles, des vues, des contrôleurs, des composants et l’injection de dépendance de service ; choisir entre le traitement côté client et celui côté serveur ; conception pour l’évolutivité ; choisir entre ASP.NET Core et ASP.NET ; choisir quand utiliser les bibliothèques standard .NET
- Conception d’une application distribuée
- Concevoir une application hybride ; planifier la gestion de session dans un environnement distribué ; planifier des batteries de serveurs Web ; exécuter des services Microsoft Azure sur site avec Azure Pack ; activer le traitement différé via les fonctionnalités Azure, y compris les files d’attente, les tâches planifiées et à la demande, les fonctions Azure et Azure Web Jobs
- Concevoir et implémenter le cycle de vie d’Azure Web Apps
- Identifier et implémenter les événements Démarrer, Exécuter et Arrêter ; exécution de code contre les événements d’application dans les applications ; configurer les tâches de démarrage, notamment IIS, la configuration du pool d’applications et les outils tiers
- Configuration de la gestion d’état
- Choisir un mécanisme de gestion d’état comprenant la gestion d’état en cours, hors processus et basé sur Redis ; planifier l’évolutivité ; utiliser des cookies ou un stockage local pour maintenir l’état ; appliquer les paramètres de configuration dans les fichiers web.config ; implémenter l’état sans session, y compris les chaînes de requête ; configurer l’intergiciel pour activer l’état de la session et de l’application dans ASP.NET Core
- Conception d’une stratégie de mise en cache
- Implémenter la mise en cache de sortie de page et la mise en cache de données ; créer des profils de cache ; implémenter la mise en cache HTTP ; implémenter la mise en cache Azure Redis ; planifier une stratégie de réseau de diffusion de contenu (CDN), par exemple, Azure CDN
- Concevoir et implémenter une stratégie de socket Web
- Lire et écrire des chaînes de caractères et des données binaires de manière asynchrone ; choisir une stratégie de perte de connexion ; décider quand utiliser des sockets Web ; mettre en œuvre SignalR ; activer les fonctionnalités de socket Web dans une instance Azure Web App
- Concevoir une solution de gestion de configuration
- Gérer les sources de configuration, y compris les fichiers XML, JSON et INI ; gérer les variables d’environnement ; implémenter les objets Option ; implémenter plusieurs environnements en utilisant des fichiers et une structure hiérarchique ; gérer la configuration sensible ; réagir aux changements de configuration d’exécution ; implémenter une source de configuration personnalisée ; sécuriser la configuration à l’aide d’Azure Key Vault ; utiliser l’outil Secret Manager en développement pour garder les secrets de votre code pour les valeurs de configuration
- Interagir avec l’environnement hôte
- Travailler avec un système de fichiers utilisant des fournisseurs de fichiers ; travailler avec des variables d’environnement ; déterminer les capacités de l’environnement d’hébergement ; implémenter des composants natifs, y compris PInvoke et des dépendances natives pour les hôtes incluant Linux et Windows ; utiliser l’hébergement ASP.NET sur un serveur basé sur .NET (OWIN) Open Web Interface
- Composer une application en utilisant le pipeline de cadre
- Ajouter des modules personnalisés de traitement des demandes au pipeline ; ajouter, supprimer et configurer les services utilisés dans l’application ;concevoir et mettre en œuvre un intergiciel ; conception pour kestrel, serveur web Http.sys et IIS ; concevoir et mettre en œuvre des filtres de démarrage
- Plan des couches d’application
-
Concevoir l’architecture de construction et de déploiement (10 à 15%) :
- Concevoir une stratégie de construction d’artefact du navigateur
- Concevoir un pipeline de génération JavaScript en utilisant Gulp, Grunt, npm et Bower ; concevoir une stratégie de construction d’artefacts en utilisant Less, Sass et Font Awesome ; concevoir et mettre en œuvre une stratégie de regroupement et de minimisation pour les artefacts du navigateur, y compris JavaScript, CSS et images
- Concevoir une stratégie de construction de serveur
- Gérer les dépendances NuGet ; cibler les temps d’exécution, y compris le .NET Framework complet, .NET core et .NET standard ; gérer les configurations de débogage et de libération, y compris les options de compilation et d’optimisation ; inclure ou exclure des fichiers de la construction ; gérer les sources de compilation, y compris le contenu, les ressources et les fichiers partagés ; implémenter des métadonnées pour les projets, y compris la version, les notes de publication et les descriptions ; définir d’autres options de construction, y compris xmlDoc et warningsAsErrors ; travailler avec des fichiers statiques dans le noyau ASP.NET
- Concevoir une stratégie de publication
- Implémenter la publication d’application en utilisant dotnet.exe ; gérer les options de publication dans csproj ; mettre en œuvre des outils supplémentaires ; implémenter des scripts de pré-publication et de post-publication ; implémenter la compilation native ; publier dans l’image du conteneur Docker
- Implémenter une stratégie de déploiement Azure
- Déployer Azure Web App à l’aide de modèles de déploiement pris en charge, notamment FTP, Kudu, Web Deploy et Visual Studio Publishing Wizard ; provisionner les ressources ARM lors du déploiement des applications ; implémenter des environnements de déploiement, notamment dev, test et prod dans Azure ; utiliser des emplacements de déploiement pour les sites de transit ; déployer sur Azure Stack
- Implémenter une stratégie de déploiement sur site
- Déployer l’application sur IIS à l’aide de Web Deploy, xcopy et de Visual Studio Publishing Wizard ; déployer l’application sur Windows Nano Server, déployer l’application sur IIS Hosted Web Core, déployer l’application sur le serveur Web HTTP.sys ; déployer l’application sur Kestrel sous Windows et Linux ; implémenter le proxy inverse à Kestrel en utilisant IIS et Nginx
- Concevoir une stratégie de construction d’artefact du navigateur
-
Conception de l’expérience utilisateur (15-20%) :
- Créer des éléments de l’interface utilisateur pour une application Web
- Création et application de styles à l’aide de CSS, structuration et disposition de l’interface utilisateur à l’aide du langage HTML, mise en œuvre du contenu de page dynamique basé sur une conception
- Conception et mise en œuvre du comportement de l’interface utilisateur
- Implémenter la validation côté client ; utiliser JavaScript pour manipuler le DOM ; étendre les objets en utilisant l’héritage prototypique ; utiliser AJAX pour effectuer des mises à jour partielles de page
- Conception de la disposition de l’interface utilisateur d’une application
- Implémenter des vues partielles et afficher des composants pour les réutiliser dans différentes zones de l’application ; concevoir et implémenter des pages en utilisant Razor Pages ; concevoir et mettre en œuvre des dispositions pour fournir une structure visuelle ; définir et rendre les sections de page facultatives et requises ; créer et utiliser des aides aux balises et au HTML pour simplifier le balisage
- Planifier une mise en page de l’interface utilisateur réactive
- Planifier des applications qui s’exécutent sur plusieurs périphériques et résolutions d’écran ; utiliser les requêtes médias et la grille réactive de Bootstrap ; détecter les fonctions et les fonctionnalités du navigateur ; créer une application Web qui fonctionne sur plusieurs navigateurs et périphériques mobiles ; permettre des expériences multi-navigateurs cohérentes avec les polyfills
- Planifier une stratégie d’interface utilisateur mobile
- Mettre en œuvre des éléments d’interface utilisateur spécifiques aux mobiles, tels que les entrées tactiles, les situations à faible bande passante et les changements d’orientation des périphériques ; définir et implémenter une stratégie pour travailler avec les navigateurs mobiles
- Créer des éléments de l’interface utilisateur pour une application Web
-
Développement de l’expérience utilisateur (15-20%)
- Planifier l’optimisation et l’accessibilité des moteurs de recherche
- Utiliser des outils analytiques pour analyser HTML ; fournir un sitemap xml et un fichier robots.txt pour améliorer le raclage ; écrire un balisage sémantique pour l’accessibilité, par exemple, des lecteurs d’écran ; utiliser des extraits enrichis pour augmenter la visibilité du contenu
- Planifier et implémenter la globalisation et la localisation
- Planifier une stratégie de localisation ; créer et appliquer des ressources à l’interface utilisateur, y compris les ressources JavaScript ; établir des cultures ; implémenter la localisation côté serveur et la globalisation
- Conception et mise en œuvre des contrôleurs et des actions MVC
- Appliquer les attributs d’autorisation, les filtres, y compris les filtres globaux, d’authentification et remplaçables ; choisir et implémenter des codes et des réponses de statut HTTP personnalisés ; mettre en œuvre des résultats d’action ; implémenter les zones MVC ; implémenter l’injection de dépendances pour les services dans les contrôleurs
- Conception et mise en œuvre des itinéraires
- Définir une route pour gérer un modèle d’URL ; appliquer des contraintes de route ; ignorer les modèles d’URL ; ajouter des paramètres de route personnalisés ; définir des zones ; définir des routes interopérables avec des cadres de travail d’application de page unique tels que Angular
- Contrôle du comportement de l’application à l’aide des points d’extensibilité MVC
- Créer un intergiciel personnalisé et l’injecter dans le pipeline ; implémenter des filtres MVC et des usines de contrôleurs ; contrôler le comportement de l’application en utilisant les résultats d’action, les classeurs de modèle et les gestionnaires d’itinéraires ; injecter des services dans une vue
- Concevoir et mettre en œuvre la sérialisation et la liaison de modèle
- Sérialiser les modèles et les données à l’aide de formats de sérialisation pris en charge, notamment JSON, XML, protobuf et WCF/SOAP ; implémenter la liaison de modèle et de propriété, y compris la liaison personnalisée et la validation de modèle ; implémenter la communication de socket Web dans MVC ; mettre en œuvre le téléchargement de fichiers et les données en plusieurs parties ; utiliser AutoRest pour créer des clients
- Planifier l’optimisation et l’accessibilité des moteurs de recherche
-
Dépannage et débogage des applications Web (20-25%)
- Prévenir et résoudre les problèmes de temps d’exécution
- Résoudre les problèmes de performances, de sécurité et d’erreurs ; implémenter le suivi, la journalisation et le débogage, y compris IntelliTrace ; activer et configurer la surveillance de l’intégrité, y compris l’Analyseur de performances ; configurer et utiliser la télémétrie d’exécution App Insights
- Conception d’une stratégie de gestion des exceptions
- Gérer les exceptions sur plusieurs couches ; utiliser l’intergiciel MVC pour configurer la gestion des erreurs ; utiliser différentes stratégies de gestion des exceptions pour différents environnements ; créer et afficher des pages d’erreur personnalisées ; configurer un pipeline personnalisé pour la gestion des erreurs ; gérer les exceptions de première chance ; configurer et utiliser App Insights ; enregistrer les exceptions d’application
- Test d’une application web
- Créer et exécuter des tests unitaires, par exemple, utiliser la classe Assert, créer des maquettes et des stubs ; créer et exécuter des tests Web, y compris en utilisant Browser Link ; déboguer une application Web dans plusieurs navigateurs et émulateurs mobiles ; utiliser Azure DevTest Labs ; utiliser Visual Studio Team Services
- Débogage d’une application Azure
- Collecter les informations de diagnostic à l’aide d’Azure App Insights ; choisir les types de journaux, par exemple, les journaux d’événements, les compteurs de performance et les vidages sur incident ; diffuser des journaux directement dans Visual Studio à partir d’un site déployé ; déboguer une application Azure en utilisant Visual Studio et le débogage à distance ; interagir directement avec les sites Web Azure distants à l’aide de Server Explorer
- Prévenir et résoudre les problèmes de temps d’exécution
-
Conception et implémentation de la sécurité (15-20%)
- Configuration de l’authentification
- Authentifier les utilisateurs ; appliquer les paramètres d’authentification ; implémenter l’identité de base ASP.NET ; activer Facebook, Google et d’autres fournisseurs externes ; implémenter la confirmation du compte, la récupération du mot de passe et l’authentification multifacteur ; effectuer une authentification à l’aide d’Azure Active Directory, d’Azure Active Directory B2C, d’Azure Active Directory B2B et de Microsoft Identity, gérer la session utilisateur à l’aide de cookies ; acquérir des jetons d’accès à l’aide de la bibliothèque d’authentification Microsoft (MSAL)
- Configuration et application des autorisations
- Créer des rôles ; autoriser les rôles par programme ; configurer et utiliser des UserStores personnalisés à l’aide d’intergiciels ; configurer les contrôleurs et les actions pour participer à l’autorisation
- Concevoir et implémenter l’authentification basée sur les revendications
- Effectuer l’authentification et l’autorisation à l’aide de jetons, notamment OpenID, OAuth, JWT, SAML, jetons de support, etc.
- Gestion de l’intégrité des données
- Appliquer le cryptage aux données de l’application ; appliquer un chiffrement aux sections de configuration d’une application ; signer les données d’application pour empêcher la falsification ; sécuriser les données à l’aide d’Azure Key Vault ; implémenter le cryptage pour la protection des données en utilisant les API de protection des données en transit et au repos
- Implémenter un site sécurisé
- Sécuriser les communications en appliquant des certificats SSL ; exiger SSL pour toutes les demandes ; activer l’hébergement SSL dans l’environnement de développement ; implémenter SSL en utilisant Azure Load Balancers ; utiliser une valeur salt et des mots de passe de hachage pour le stockage ; utiliser le codage HTML pour empêcher les attaques par script intersite (bibliothèque ANTI-XSS) ; implémenter la validation différée et gérer les demandes non validées, par exemple, un formulaire, une chaîne de requête et un URL ; empêcher les attaques par injection SQL en paramétrant les requêtes ; empêcher les contrefaçons de requêtes intersites (XSRF) ; utiliser Azure Security Center pour surveiller les ressources Azure ; mettre en œuvre le partage de ressources d’origine croisée (CORS) ; mettre en place une protection contre les attaques de redirection ouvertes
- Configuration de l’authentification