Ne pas tenir compte du tarif indiqué en bas de page
Rendez-vous sur le portail client et cliquer sur Passer commande
Les prix 2020 sont indiqués


Partager cet article ...Print this pageEmail this to someoneTweet about this on TwitterShare on FacebookShare on Google+Share on LinkedInPin on PinterestShare on TumblrDigg this
C# 8.0/Framework.net – Développement avancé
CS-AV / LI-DEV-515

OBJECTIFS PEDAGOGIQUES

A la fin du cours, le stagiaire sera capable de :
- Maîtriser le multi-threading
- Gérer l’asynchronisme
- Utiliser les méta-données avec les Attributes
- Etre initié à la programmation dynamique et parallèle
- Interagir avec du code non managé
- Créer des domaines d’application.

PUBLIC

PRE–REQUIS

Développeurs, architectes, chefs de projets techniques. Indispensables :
- Connaissance pratique du langage C# ou avoir suivi le cours « C# – Développement avec le Framework .NET ».

CONTENU

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)

    • Nos tests de validation des compétences font partie intégrante du processus d’apprentissage car ils permettent de développer différents niveaux d’abstractions
    • Solliciter l’apprenant à l’aide de nos QCM, c’est lui permettre d’étayer sa réflexion en mobilisant sa mémoire pour choisir la bonne réponse. Nous sommes bien dans une technique d’ancrage mémoriel
    • L’examen sera passé à la fin de la formation

 

SESSIONS PROGRAMMEES

C# – Développement avancé

VALIDATION

Exercices de validation au cours de la formation

PEDAGOGIE

Exposés – Cas pratiques – Synthèse

INTERVENANTS

Consultant-formateur dont les compétences techniques, professionnelles et pédagogiques ont été validées par des diplômes et/ou testées et approuvées par l’éditeur et/ou par M2i Formation.

MODALITES PRATIQUES

Durée : 3 jours (21 heures) avec 7 heures par jour
Prix stagiaire : 1 238,00 € TTC
Horaires : 09h00 / 17h30

Durée: