Description
Ce programme de formation aborde des concepts clés liés à la concurrence, au threading et à l'asynchronisme, en mettant l'accent sur l'utilisation efficace du multi-threading, la gestion des deadlocks et l'optimisation via le ThreadPool. Il explore également les différences entre appels synchrones et asynchrones, ainsi que les fonctionnalités de C#5, telles que async et await. En outre, le contenu couvre la réflexion, l'interopérabilité avec P/Invoke et COM, et les aspects avancés du runtime, incluant le Dynamic Language Runtime et la sécurité d'accès. Ce programme s'adresse aux développeurs souhaitant approfondir leurs
Objectifs
- Maîtriser le multi-threadingGérer l'asynchronismeUtiliser les méta-données avec les AttributesEtre initié à la programmation dynamique et parallèleInteragir avec du code non managéCréer des domaines d'application
Récapitulatif
Public
Développeurs, architectes, chefs de projets techniques
Prérequis
Connaissance et pratique du langage C#
Méthodes et modalités pédagogiques
Formation réalisée en Présentiel, Distanciel ou Dual-Learning selon la formule retenue.
Moyens et supports pédagogiques
Mise à disposition d'un poste de travail sur nos formations en Présentiel.
Mise à disposition de nos environnements de visio sur nos formations en Distanciel
Remise d'une documentation pédagogique numérique pendant la formation
La formation est constituée d'apports théoriques, d'exercices pratiques et de réflexions
Dans le cas d'une formation sur site Entreprise, le client s'engage à avoir toutes les ressources pédagogiques nécessaires (salle, équipements, accès internet, TV ou Paperboard...) au bon déroulement de l'action de formation conformément aux prérequis indiqués dans le programme de formation
Modalités de suivi et d'évaluations
Auto-positionnement des stagiaires avant la formation
Émargement des stagiaires et formateur par 1/2 journée
Exercices de mise en pratique ou quiz de connaissances tout au long de la formation permettant de mesurer la progression des stagiaires
Auto-évaluation des acquis de la formation par les stagiaires
Questionnaire de satisfaction à chaud et à froid à l'issue de la formation
Programme détaillé
Concurrence et threading
- Cas d'utilisation du multi-threading
- Thread et Task
- Synchronisation et communication
- ThreadPool et efficacité
- Deadlocks et autres écueils à éviter
Asynchronisme
- Différence entre appels synchrones et asynchrones
- Async opérations
- C#5 async et await
- Progression et abandon
Réflexion et attributs
- Introspection des assemblies et classes
- Les types d'Attributes
- Paramètres des Attributes
- Génération de code : Emitters
Interopérabilité
- P/Invoke
- COM Interop
- COM Wrappers
- Passage de paramètres
Fonctionnement avancé du runtime
- Dynamic Language Runtime (DLR)
- Task Parallel Library (TPL)
- Sécurité d'accès : Code Access Security
- Application Domains