Venez en toute sécurité dans nos centres ! Voir notre dispositif sanitaire

> Formations > Technologies numériques > Développement logiciel > .NET > Formation Optimisation des applications .NET en langage C# > Formations > Technologies numériques > Formation Optimisation des applications .NET en langage C#

Optimisation des applications .NET en langage C#

Optimisation des applications .NET en langage C#

Télécharger au format pdf Partager cette formation par e-mail


Ce cours vous propose une méthodologie pour améliorer l'efficacité de vos applications .NET et .Net Core. Il vous apprendra à utiliser les principaux outils d'analyse de performances et de diagnostic et vous permettra de maîtriser les différentes techniques d'optimisation en matière de codage du langage C#.


Inter
Intra
Sur mesure

Cours pratique en présentiel ou en classe à distance

Réf : OPA
Prix : 2390 € HT
  4j - 28h
Pauses-café et
déjeuners offerts




Ce cours vous propose une méthodologie pour améliorer l'efficacité de vos applications .NET et .Net Core. Il vous apprendra à utiliser les principaux outils d'analyse de performances et de diagnostic et vous permettra de maîtriser les différentes techniques d'optimisation en matière de codage du langage C#.

Objectifs pédagogiques

À l’issue de la formation, le participant sera en mesure de :
  • Maîtriser l’architecture des applications .Net
  • Diagnostiquer les allocations mémoire et éviter les fuites mémoire
  • Optimiser le code C# en référence aux dernières versions C# 7, 8 et 9
  • Maîtriser les opérations sur les tableaux et les collections
  • Optimiser et mesurer les gains de performances via le parallélisme
  • Coder en C# pour résoudre des problématiques réelles

Objectifs pédagogiques

Public concerné

Développeurs, ingénieurs, architectes, chefs de projet.

Public concerné

Prérequis

Bonnes connaissances du langage C#. Expérience requise.
Vérifiez que vous avez les prérequis nécessaires pour profiter pleinement de cette formation en faisant ce test.

Prérequis

Programme de la formation

Introduction
  • Évolution de la plateforme .Net et de son écosystème.
  • Optimiser : quoi, comment, quand ? Objectifs.
  • Évolution de la plateforme .Net et de son écosystème.
  • Optimiser : quoi, comment, quand ? Objectifs.
Travaux pratiques
Analyse de l’exécution d’une application .Net via l’outils WinDebug.

Le ramasse-miettes GC, optimisation des allocations et diagnostic
  • La gestion de la mémoire par le ramasse-miettes et API GC.
  • Outils de diagnostic de Visual Studio, de JetBrains et BenchmarkDotNet.
  • Le Pattern Dispose et l’implémentation de IDisposable.
  • Recommandations pour éviter les fuites mémoires potentielles d’une application .Net.
  • Garde-fous au design time via les Règles d’Analyse de code.
  • Outils de l’écosystème .Net pour tracer les erreurs de boxing, de closure et références nulles.
  • La gestion de la mémoire par le ramasse-miettes et API GC.
  • Outils de diagnostic de Visual Studio, de JetBrains et BenchmarkDotNet.
  • Le Pattern Dispose et l’implémentation de IDisposable.
  • Recommandations pour éviter les fuites mémoires potentielles d’une application .Net.
  • Garde-fous au design time via les Règles d’Analyse de code.
  • Outils de l’écosystème .Net pour tracer les erreurs de boxing, de closure et références nulles.
Travaux pratiques
Détection et correction des fuites de mémoire. Règles d’analyse et outils de diagnostic.

Méthodes C# et constructions du langage
  • Méthodes C# et l’évolution du codage.
  • Méthodes d’extension et architecture LINQ.
  • Méthodes asynchrones et utilisation des mots clés async/await.
  • Mesures de performance des allocations des types Value comparés aux types Reference.
  • Nouveau type valeur ValueTuple de C# 7.0.
  • Passage de paramètres et retour par référence de C# 7.2.
  • Avantages de la programmation fonctionnelle en C# et comparaison au langage fonctionnel F#.
  • Pattern Matching en C#.
  • Méthodes C# et l’évolution du codage.
  • Méthodes d’extension et architecture LINQ.
  • Méthodes asynchrones et utilisation des mots clés async/await.
  • Mesures de performance des allocations des types Value comparés aux types Reference.
  • Nouveau type valeur ValueTuple de C# 7.0.
  • Passage de paramètres et retour par référence de C# 7.2.
  • Avantages de la programmation fonctionnelle en C# et comparaison au langage fonctionnel F#.
  • Pattern Matching en C#.
Travaux pratiques
Exercices et démonstrations concrètes sur les éléments de codage et la programmation fonctionnelle.

Tableaux et collections
  • Performance des opérations sur les données.
  • Collections du .Net et caractéristiques.
  • Implémentation de l’interface IEquatable.
  • Pointeur IntPtr et le mot clé C# 7.2 stackalloc pour allouer sur la pile.
  • Performance des opérations sur les données.
  • Collections du .Net et caractéristiques.
  • Implémentation de l’interface IEquatable.
  • Pointeur IntPtr et le mot clé C# 7.2 stackalloc pour allouer sur la pile.
Travaux pratiques
Exercices et démonstrations sur les collections et allocations sur la pile.

La librairie TPL du .Net 4.7 : asynchronisme et parallélisme
  • Évolution de la gestion des appels asynchrones via les mots clés async/await.
  • Les nouvelles classes de System.Threading.Tasks.
  • Paralléliser les itérations for et foreach. Design pattern en matière de parallélisme.
  • Utilisation de l’infrastructure PLinq.
  • Diagnostic de performance via le NuGet BenchmarkDotNet et DotTrace de JetBrains.
  • Évolution de la gestion des appels asynchrones via les mots clés async/await.
  • Les nouvelles classes de System.Threading.Tasks.
  • Paralléliser les itérations for et foreach. Design pattern en matière de parallélisme.
  • Utilisation de l’infrastructure PLinq.
  • Diagnostic de performance via le NuGet BenchmarkDotNet et DotTrace de JetBrains.
Travaux pratiques
Exercices et démonstrations sur le parallélisme. Diagnostics via BenchmarkDotNet.

Conclusion
  • Incidence des fonctionnalités C# 8 et C# 9 sur le code et les applications .Net.
  • Une synthèse et quelques conseils.
  • Recommandations d’ouvrages et références internet.
  • Incidence des fonctionnalités C# 8 et C# 9 sur le code et les applications .Net.
  • Une synthèse et quelques conseils.
  • Recommandations d’ouvrages et références internet.


Programme de la formation

Solutions de financement

Selon votre situation, votre formation peut être financée par :
  • Le plan de développement des compétences de votre entreprise : rapprochez-vous de votre service RH.
  • Le dispositif FNE-Formation.
  • L’OPCO (opérateurs de compétences) de votre entreprise.
  • Pôle Emploi sous réserve de l’acceptation de votre dossier par votre conseiller Pôle Emploi.
  • Le plan de développement des compétences de votre entreprise : rapprochez-vous de votre service RH.
  • Le dispositif FNE-Formation.
  • L’OPCO (opérateurs de compétences) de votre entreprise.
  • Pôle Emploi sous réserve de l’acceptation de votre dossier par votre conseiller Pôle Emploi.
Contactez nos équipes pour en savoir plus sur les financements à activer.

Solutions de financement

Avis clients

5,0 / 5
STEPHANE B.
22/06/21
5 / 5

Tres bonne formation, le contenue est adapté mais tres dense.
MAXIME T.
22/06/21
5 / 5

La formation était très intéressante et abordait bien les sujets donnés en introduction. Il aurait peut-être fallu passer moins de temps sur le "passé" et les anciennes versions du framework maintenant obsolètes pour se concentrer d’avantage sur les nouveautés apportés par les nouvelles versions.


Les avis clients sont issus des feuilles d’évaluation de fin de formation. La note est calculée à partir de l’ensemble des avis datant de moins de 12 mois.


Avis clients

Horaires

En présentiel, les cours ont lieu de 9h à 12h30 et de 14h à 17h30.
Les participants sont accueillis à partir de 8h45. Les pauses et déjeuners sont offerts.
En classe à distance, la formation démarre à partir de 9h.
Pour les stages pratiques de 4 ou 5 jours, quelle que soit la modalité, les sessions se terminent à 15h30 le dernier jour.

Infos pratiques

Dates et lieux

Pour vous inscrire, sélectionnez la ville et la date de votre choix.
Du 6 au 9 décembre 2021
Classe à distance
Session garantie
S’inscrire
Du 8 au 11 février 2022
Paris La Défense
S’inscrire
Du 8 au 11 février 2022
Classe à distance
S’inscrire
Du 7 au 10 juin 2022
Classe à distance
S’inscrire
Du 7 au 10 juin 2022
Paris La Défense
S’inscrire
Du 30 août au 2 septembre 2022
Paris La Défense
S’inscrire
Du 30 août au 2 septembre 2022
Classe à distance
S’inscrire
Du 11 au 14 octobre 2022
Classe à distance
S’inscrire
Du 11 au 14 octobre 2022
Paris La Défense
S’inscrire

Dates et lieux