Détails :
Durée :
3 Jours
Prérequis :
Public :
Objectifs :
Au terme de cette formation, vous serez en mesure de :
- Savoir manipuler les évolutions modernes du langage
- Approfondir les notions avancées sur les types
- Comprendre la gestion de la mémoire en C#
- Appréhender le Garbage Collector
- Maîtriser les tests unitaires en C#
- Maîtriser la programmation parallèle et l'asynchronisme en C#
- Exploiter les capacités de LINQ
- Appliquer les patterns utilisés en .NET Core
Demande de devis :
Devis :
Si vous souhaitez être contacté et obtenir plus d'informations sur cette formation
veuillez remplir notre formulaire de mise en relation.
Cursus de formation :
Programme détaillé de la formation :
- .NET Framework VS .NET [Core]
- .NET, une plateforme de développement polyvalente
- Les outils de développement à votre disposition
- Fonctions locales (avantages et performances)
- Les expressions fléchées
- Les références en C#
- Passage de paramètres par références
- Retour de fonction par référence
- Références sur les types valeurs
- Type références nullable
- La notion de tuple
- Implémentation par défaut d'interface
- Generics et contraintes de generics
- Le principe de réflexion en C#/.NET
- Types anonymes et types dynamiques
- L'interface IDisposable et la durée de vie de vos ressources
- Rappels sur les notions de pile et de tas (Stack VS Heap)
- Différences entre types valeur et types référence
- Le type Span et le mot clé stackalloc
- Fonctionnement du Garbage Collector en .NET
- Resources managée VS Resources non managées.
- Profilage de la mémoire en C#
- Introduction aux tests logiciels
- Les différents niveaux de tests
- Le TDD (Test Driven Development)
- L'importance de l'architecture de votre code
- Présentation des outils .NET pour les tests
- Mise en oeuvre d'une batterie de tests unitaires
- Ecriture et exécution de vos tests
- Visualisation des résultats des tests dans Visual Studio
- Le principe de bouchonnage (Mock objects)
- Introduction à la notion de bouchon/mock
- Principe d'injection de dépendance
- Utilisation d'un framework de bouchonnage .NET
- Tests unitaires et code coverage
- Présentation de la programmation parallèle
- Architecture d'un programme multi-threads
- Méthodes de gestion des threads
- Cycle de vie d'un thread
- Les threads et les pools de threads
- Notion de coroutines en .Net et l'instruction yield return
- La notion de tâche en .Net (Task)
- Les instructions async et await
- Réaliser des opérations asynchrones
- Synchroniser l'accès concurrent aux données
- Qu'est-ce que LINQ
- Les différents champs d'application
- Les détails de la syntaxe
- LINQ et les performances
- Créer ses propres méthodes Linq
- IoC (Inversion Of Control) / Injection de dépendances
- Pattern Options pour gérer la configuration
- Présentation rapide de l'architecture d'un projet ASP.Net Core
- Fonctionnement du pipeline ASP.Net Core
Rappels sur C# et la plateforme .Net
Quelques fonctionnalité avancées en C#
Notions avancées sur les types
La gestion de la mémoire en C#
Mise en oeuvre de Tests Unitaires en C#
Multithreading sous .Net
Programmation asynchrone
LINQ (Language INtegrated Query)
Patterns utilisés en .Net