C# avancé

Description de la formation

Comprendre et utiliser la réflexion, les lambdas, les génériques, les méthodes d’extension, LINQ, le parallélisme et l'asynchronisme dans des cas complexes de programmation d’applications modernes en C#.

La réalité du développement de logiciels complexes en entreprise nous amène à rencontrer des problématiques et défis que cette formation adresse : réflexion, programmation générique et requêtage LINQ, traitements parallèles (sur matériel multi-cœur) et asynchrones.

Objectifs pédagogiques

À la fin de cette formation, le participant sera en mesure de :

  • Utiliser la réflexion pour inspecter et générer dynamiquement du code à l’exécution du programme.
  • Coder avec les génériques pour développer des fonctionnalités et des composantes évolutives et modulables.
  • Expérimenter le requêtage d'objets avec LINQ, exemple complet dans une application qui se connecte à une base de données avec Entity Framework.
  • Programmer avec les instructions parallèles et asynchrones pour maximiser la performance du logiciel sur les systèmes multicœurs.

Méthodologie

Plusieurs méthodes d’apprentissage et outils didactiques permettant de mesurer le progrès et l’intégration des concepts par les participants sont utilisés tout au long de la formation.

  • Exposé
  • Démonstration
  • Travail individuel
  • Exercice informatique

Clientèle visée

Professionnel et technicien spécialisés en TI

Particularité

Les participants à cette formation doivent au préalable avoir des connaissances de base avec Visual Studio, .NET et C#.

À savoir lorsque cette formation est en ligne

Nos formations en ligne sont diffusées sous forme de classes virtuelles interactives et nous travaillons avec la plateforme Zoom.

Chaque participant.e doit avoir un ordinateur avec un bon accès à Internet ainsi qu'une caméra, un micro et des haut-parleurs afin de participer à la formation. La caméra doit être fonctionnelle et être ouverte tout au long de la formation pour faciliter les échanges avec le formateur et le volet pratique de la formation.

Il est fortement recommandé d'avoir deux écrans sur le même ordinateur : un pour suivre la formation et l'autre pour les exercices pratiques.

Vous devez installer sur votre ordinateur : VS2019 Pro ou plus récent

    Rappels sur C# 6

    Les dernières nouveautés de C#

    Expressions Lambdas

    Utilisation de la Réflexion en .NET

    • la réflexion et son application
    • inspecter et manipuler du code à l'exécution
    • fournir des metadatas additionnels avec des attributs
    • concevoir une architecture à plug-in
    • protéger son code avec l’obfuscation
    • les bons outils à connaître

    Les génériques

    • avantages des génériques en C#
    • les collections et interfaces génériques
    • créér des classes et méthodes évolutives et modulables
    • les types nullables

    Requêtage avec LINQ

    • la syntaxe LINQ
    • exploration des opérateurs (Where, Distinct, OrderBy, Count, Any, OfType, ...) avec exemples concrets
    • entity Framework et base de données

    Les méthodes d’extension

    Optimisation de performance et exploitation des CPU multicœur

    Programmation multithread, parallèle et asynchrone

    • threading versus Parallélisme
    • parallel Linq (PLINQ) et Task Parallel Library (TPL)
    • programmer avec les Tasks pour optimiser les performances
    • l'asynchronisme simplifié à l'extrême depuis C# 5 : async et await
    • utiliser Dispatcher et BackgroundWorker dans les projets avec interface utilisateur

    Interopérabilité avec Office

Laurent Duveau

Laurent Duveau

Formateur en technologies Web et Mobile

Fort de plus de 20 ans d'expérience, Laurent a accompagné avec succès de très nombreuses entreprises, petites et grandes, dans leur stratégie de développement sur les outils Microsoft, avec dernièrement un accent sur Windows 10, le cloud Azure et tout ce qui touche au Web ou la mobilité, comme Xamarin. Entrepreneur dédié aux technologies Microsoft, Laurent a acquis son expertise dans le développement d'affaires, la gestion d'équipe, l’accompagnement et la réalisation de projets en développement logiciel des start-up, jusqu'aux multinationales, principalement au Canada et en Europe.

Témoignages

"Très bon cours. "
Fadi, DESJARDINS

Les clients qui ont suivi cette formation se sont aussi inscrits à :

C# : les fondements
ASP.NET MVC : les fondements
JavaScript avancé