Concurrence en Go (Golang) : Guide pratique
300 pages
French
PDF
4.5

Concurrence en Go (Golang) : Guide pratique

Concurrence en Go (Golang) : Guide pratique

Auteur :

Année :

Résumé :

Le livre « Concurrence en Go (Golang) » est un guide pratique complet qui vous aidera à maîtriser l'un des sujets les plus puissants et en même temps les plus complexes du langage de programmation Go. La concurrence est intégrée dans l'architecture même de Go, et sans sa compréhension, il est impossible de créer des applications efficaces, rapides et évolutives. Ce livre vous guidera des bases jusqu'aux motifs avancés utilisés dans les systèmes de production.



De quoi parle ce livre

Le livre commence par les concepts fondamentaux : ce que sont les goroutines et en quoi elles diffèrent des threads du système d'exploitation, comment fonctionnent les canaux (buffered et unbuffered), et comment synchroniser correctement l'accès aux données à l'aide de mutex et d'opérations atomiques. Vous apprendrez à éviter les conditions de course (race condition) et les blocages mutuels (deadlock). Ensuite, l'auteur aborde des sujets plus complexes :

  • Motifs utilisant select et les timeouts
  • Organisation de pipelines de données (pipeline)
  • Gestion d'un groupe de goroutines avec sync.WaitGroup et errgroup
  • Utilisation d'un pool de workers pour contrôler le parallélisme
  • Contextes (context) et annulation d'opérations
  • Primitives de synchronisation avancées : sync.Once, sync.Pool, sync.Cond
  • Test du code concurrent avec go test -race


À qui s'adresse ce livre

Ce livre sera utile :

  • Aux développeurs Go débutants qui ont déjà maîtrisé la syntaxe du langage et souhaitent comprendre comment écrire des programmes multithreads efficaces
  • Aux programmeurs expérimentés dans d'autres langages (Java, C#, Python) qui passent à Go et souhaitent étudier son modèle unique de concurrence
  • Aux développeurs backend créant des services à forte charge, des microservices, des serveurs web et des systèmes en temps réel
  • Aux étudiants et à tous ceux qui s'intéressent à la programmation parallèle et souhaitent maîtriser les meilleures pratiques


Ce que vous apprendrez après la lecture

Après avoir étudié le contenu, vous serez capable de :

  • Concevoir correctement des architectures concurrentes en évitant les erreurs typiques
  • Utiliser efficacement les goroutines et les canaux pour le transfert de données et la synchronisation
  • Écrire du code fiable, protégé contre les courses de données et les deadlocks
  • Appliquer des motifs avancés : fan-in, fan-out, or-done, tee-channel, bridge-channel
  • Intégrer la concurrence dans des projets réels à l'aide de context et de graceful shutdown
  • Profiler et déboguer le code concurrent

Le livre contient de nombreux exemples de code que vous pouvez exécuter et modifier immédiatement. Tous les exemples sont accompagnés de commentaires et d'explications détaillés. Ce n'est pas simplement de la théorie — c'est un guide pratique qui deviendra votre ouvrage de référence sur la concurrence en Go.



L'auteur du livre est Alexeï Kouznetsov, développeur backend senior avec 10 ans d'expérience, dont les 6 dernières années passées à écrire en Go sur des projets à forte charge. Alexeï est connu pour ses présentations lors de conférences de la communauté Go et pour sa série d'articles sur la programmation concurrente.

Recommendations