Devenez incollable sur l'asynchronisme en C#

74.99€
🎬 40 vidéos

Description

L'asynchronisme est devenu un sujet à la mode. A tel point que certains développeurs pensent qu'il s'agit d'une recette magique permettant d'améliorer les performances de leur application de façon exceptionnelle.

Seulement voilà, il arrive parfois qu'on rencontre des déconvenues... Pourquoi ? Et bien tout simplement car l'asynchronisme n'a rien de magique, et ce cours va vous montrer et expliquer pas-à-pas tout ce qu'il est possible de faire avec l'asynchronisme (et ce qu'il n'est pas recommandé ou inutile de faire également), et nous irons en profondeur sur les aspects avancés, pour que vous compreniez réellement l'impact de l'utilisation de l'asynchronisme sur votre projet !

Ainsi, nous reprendrons les bases de l’asynchronisme, sujet connu par une large majorité de développeurs C#, puis nous verrons des cas d'usages avancés, comme l'annulation, le parallélisme ou les nouveautés liées à l'asynchronisme en C# 8.

Le sujet est vaste et varié, c'est pourquoi il est recommandé d'avoir des connaissances sur le langage C# pour pouvoir suivre les explications et les exemples. Si vous avez des connaissances XAML et/ou IL, c'est encore mieux. Toutefois, ce n'est pas obligatoire, car les choses seront expliquées en profondeur pour que même les non initiés puissent comprendre. Si vous souhaitez vraiment comprendre et maitriser l'asynchronisme en C#, ce cours est pour vous et vous amènera à un autre niveau de compréhension. Vous ne verrez plus async/await de la même façon après ...

Au menu 🍽

  • ▶️Introduction
  • ▶️Un peu de théorie : notions de base
  • ▶️Démo du projet et des problèmes si on utilise pas l'asynchronisme
  • ▶️Async et await : les mots clés magiques ?
  • ▶️Le contexte lors de l'await
  • ▶️Exercice : votre première méthode asynchrone
  • ▶️Corrigé : votre première méthode asynchrone
  • ▶️La gestion des exceptions avec le code asynchrone
  • ▶️Démarrer du code synchrone de façon asynchrone
  • ▶️Attendre du code asynchrone dans du code synchrone
  • ▶️Récapitulatif : que faire et qu'éviter en asynchrone ?
  • ▶️Démo du projet pour ce module
  • ▶️Annulation d'une tâche asynchrone, c'est possible ?
  • ▶️Mise en pratique de l'annulation d'une tâche asynchrone
  • ▶️Exercice : lancement de tâches asynchrones en parallèle
  • ▶️Corrigé : lancement de tâches asynchrones en parallèle
  • ▶️Découverte de TPL : Task Parallel Library
  • ▶️TPL : La classe Parallel
  • ▶️Gérer le timeout de code asynchrone (avec et sans token)
  • ▶️Le statut d'une tâche et la continuation
  • ▶️Reporter la progression d'une tâche
  • ▶️Faire le boulot du framework ? Découvrons TaskCompletionSource
  • ▶️Migrer le code legacy vers async/await facilement
  • ▶️Rappels sur le fonctionnement IEnumerable
  • ▶️C# 8 : IAsyncEnumerable
  • ▶️C# 8 : IAsyncDisposable
  • ▶️Découverte ValueTask
  • ▶️L'impact du mot clé async
  • ▶️La création de la state machine
  • ▶️Analyse de la state machine (async void)
  • ▶️Analyse de la state machine (async Task<T>)
  • ▶️Analyse de la state machine (multiples await)
  • ▶️Créer son propre awaiter
  • ▶️Créer son propre type de tâche (1)
  • ▶️Créer son propre type de tâche (2)
  • ▶️Créer son propre type de tâche (3)
  • ▶️Synchrone ou asynchrone en web ?
  • ▶️Syndrome async avec les requêtes HTTP
  • ▶️Les appels HTTP et l'annulation
  • ▶️Améliorer le comportement ASP.NET Core en cas d'annulation