Accueil    Formations    Informatique    Langages et développement    Développeur C# .NET    C# 8.0 / Framework .NET - Développement avancé

Partager cette formation Télécharger au format pdf Ajouter à mes favoris

Comment utiliser vos droits
sur Mon Compte Formation

Objectifs pédagogiques

  • Maîtriser le multi-threading
  • Gérer l'asynchronisme
  • Utiliser les métadonnées avec les Attributes
  • Etre initié à la programmation dynamique et parallèle
  • Interagir avec du code non managé
  • Créer des domaines d'application.

Niveau requis

Connaissance pratique du langage C# ou avoir suivi le cours CS-FRM "C# - Développement avec le Framework .NET".

Public concerné

Développeurs, architectes, chefs de projets techniques.

Programme

Les fonctionnalités avancées de C#

  • Rappel sur les méthodes anonymes
  • Rappel sur les expressions lambda
  • Les fonctions locales
  • Les tuples
  • Les déconstructeurs
  • Pattern matching
  • Variables "out"
  • Amélioration des littéraux numériques
  • Body expression
  • Amélioration de la syntaxe du throw
  • Retour de fonction par références

Les fonctionnalités avancées de C# 7.2 et 8.0

  • Sémantique de référence avec les types valeur
  • Types de référence nullable
  • Nouveaux modificateurs d'accès
  • Utilisation de code non sécurisé

Améliorer l'utilisation de la mémoire

  • Introduction
  • Concept de tas et de pile
  • La classe Span

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# async et await
  • Progression et abandon

Réflection et Attributes

  • Introspection des assemblies et classes
  • Les types d'Attributes
  • Paramètres des Attributes
  • Génération de code : Emitters

LINQ

  • Architecture interne de LINQ
  • Fonctionnalités avancées de LINQ
  • Créer son propre provider "IQueryable"
  • Performances sur l'utilisation de LINQ

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 (CAS)
  • Application domains

Garbage Collector

  • Algorithme de nettoyage du Garbage Collector
  • Ressources managées vs non managées
  • Bien libérer les ressources
  • Pattern IDisposable

Tests unitaires

  • Utilisation de MSTest v2 et NUnit
  • Comment bien écrire un test unitaire ?
  • Convaincre les développeurs sur l'utilité des tests unitaires
  • Extensions du moteur MSTest v2
  • Les framework de "Mock"
  • Fluent Assertions

Certification (en option)

  • Prévoir l'achat de la certification en supplément
  • L'examen (en français) sera passé le dernier jour, à l'issue de la formation et s'effectuera en ligne
  • Il s'agit d'un QCM dont la durée moyenne est d'1h30 et dont le score obtenu attestera d'un niveau de compétence

Modalités d’évaluation des acquis

L'évaluation des acquis se fait :

  • En cours de formation, par des études de cas ou des travaux pratiques
  • Et, en fin de formation, par un questionnaire d'auto-évaluation ou une certification (M2i ou éditeur)

Compétences visées

  • Développer des applications ou logiciels conformément au cahier des charges
  • Intégrer un produit ou un programme à partir des outils, méthodes ou langages
  • Etre autonome dans l'exécution des tâches
  • Préparer les plans de tests d'une application
  • Conduire les tests unitaires
  • Optimiser les tests de performance d'une application
  • Assurer la veille technique et concurrentielle.

Partager cette formation Télécharger au format pdf Ajouter à mes favoris

Vous souhaitez suivre cette formation ?

Cette formation est disponible en présentiel ou en classe à distance, avec un programme et une qualité pédagogique identiques.

Choisissez la modalité souhaitée pour vous inscrire :

Votre société a besoin d'une offre personnalisée ? Contactez-nous

Testez vos connaissances

Nos quizz vous guident dans le choix de formation.
Évaluez votre niveau de pré-requis pour découvrir la formation faite pour vous.

Accédez au test de connaissance

Faites-nous part de votre projet de formation, nous sommes là pour vous guider.

Contactez-nous