Rust Standard Library Cookbook
362 pages
French
PDF
4.5

Rust Standard Library Cookbook

Rust Standard Library Cookbook

Auteur :

Année :

Résumé :

Introduction

Le livre « Rust Standard Library Cookbook » (auteurs Daniel Durante et Jan Nils Ferner, 2018, 362 pages) est un guide pratique consacré à l'une des parties les plus puissantes et souvent sous-estimées de l'écosystème Rust : sa bibliothèque standard. Contrairement à de nombreux livres qui se concentrent sur la syntaxe du langage ou sur la création d'applications web à l'aide de frameworks, ce « recueil de recettes » propose au lecteur des solutions prêtes à l'emploi et éprouvées pour résoudre des problèmes quotidiens. Le livre s'adresse aux développeurs déjà familiers avec les bases de Rust et les aide à approfondir leur compréhension des modules standards tels que std::collections, std::iter, std::io, std::thread et autres.

De quoi parle ce livre

« Rust Standard Library Cookbook » est construit sur le principe d'un recueil de recettes (cookbook). Chaque chapitre est consacré à un domaine spécifique de la bibliothèque standard et contient de 5 à 15 problèmes pratiques avec des solutions détaillées. Le livre couvre les sujets clés suivants :

  • Collections : travail avec les vecteurs, les tables de hachage, les ensembles, les files d'attente et autres structures de données. Les recettes montrent comment choisir efficacement le type de collection, comment effectuer des recherches, des tris et des filtrages.
  • Itérateurs et fermetures : création de chaînes d'itérateurs, utilisation de map, filter, fold, zip et autres adaptateurs. Une attention particulière est accordée aux performances et à l'évaluation paresseuse.
  • Entrées-sorties et travail avec les fichiers : lecture et écriture de fichiers texte et binaires, travail avec les flux, entrées-sorties bufferisées, gestion des erreurs avec Result et l'opérateur ?.
  • Multithreading : création et gestion de threads, utilisation de mutex, de canaux (mpsc), d'opérations atomiques. Les recettes incluent des motifs typiques de traitement parallèle des données.
  • Chaînes de caractères et formatage : manipulations de chaînes, expressions régulières (via la crate regex), sortie formatée.
  • Appels système et temps : travail avec le temps système, les minuteries, les nombres aléatoires.
  • Gestion des erreurs et journalisation : création de types d'erreurs personnalisés, utilisation de la crate log pour une journalisation structurée.

À qui s'adresse ce livre

Le livre est destiné aux développeurs ayant déjà des connaissances de base en Rust (syntaxe, possession, emprunt). Il sera utile :

  • À ceux qui souhaitent passer de la théorie à la pratique et apprendre à écrire du code Rust efficace et idiomatique.
  • Aux développeurs qui migrent depuis d'autres langages (C++, Python, Java) et souhaitent maîtriser rapidement les outils standards de Rust.
  • Aux spécialistes travaillant sur des projets système où les performances et la fiabilité sont importantes.
  • Aux enseignants et étudiants qui étudient Rust comme deuxième ou troisième langage de programmation.

Ce que le lecteur apprendra

Après avoir lu le livre et réalisé les exemples, le lecteur sera capable de :

  • Choisir en toute confiance la collection appropriée pour une tâche donnée et travailler efficacement avec elle.
  • Construire des chaînes d'itérateurs complexes pour traiter des données sans allocations inutiles.
  • Lire et écrire des fichiers de différents formats, gérer les erreurs d'entrée-sortie.
  • Écrire des programmes multithread avec un accès sécurisé aux données partagées.
  • Utiliser des canaux pour échanger des données entre threads.
  • Formater des chaînes de caractères et afficher des données de manière pratique.
  • Créer ses propres types d'erreurs et intégrer la journalisation dans les projets.
  • Comprendre le fonctionnement interne de la bibliothèque standard de Rust et sa philosophie.

Points forts du livre

Orientation pratique. Chaque recette contient un énoncé clair du problème, le code de la solution et des explications. Cela permet d'appliquer immédiatement les connaissances dans des projets réels.

Recommendations