Passer aux informations sur le produit
Apprenez la programmation Rust en construisant
Apprenez la programmation Rust en construisant
Description
Introduction au livre
Le guide définitif de Rust, le langage de programmation moderne et hautement performant !

Rust est un langage efficace, fiable et productif, ce qui en fait l'un des langages les plus recherchés par les programmeurs.
C'est un langage qui vaut la peine d'être appris, mais il peut être difficile pour les programmeurs débutants.
Il est donc efficace de l'apprendre après avoir acquis des bases en programmation en Python ou dans un autre langage.
« Apprendre la programmation Rust en créant » a été créé dans le but de vous permettre d’apprendre Rust efficacement en comparant le code Rust avec le code Python.
Nous avons inclus divers exemples de code source pour faciliter l'apprentissage de Rust, et comme nous supposons que les lecteurs connaissent Python, nous avons omis les explications redondantes et les exemples inutiles afin de nous concentrer davantage sur l'attrait de Rust.
Apprendre Rust vous aidera également à redécouvrir la puissance de Python et à comprendre comment Python fonctionne en coulisses.
  • Vous pouvez consulter un aperçu du contenu du livre.
    Aperçu
","
indice
Chapitre 1 : Préparation de base pour la migration de Python vers Rust

01 Pourquoi la rouille ?
__Quel type de langage est Rust ?
__Caractéristiques de la rouille
__[Colonne] Difficultés de gestion de la mémoire
__[Colonne] La signification de Rust est « rouille »
Rust est-il difficile ?
02 Différences entre Python et Rust
Python est un langage interprété.
Et Rust ?
__les deux langues modernes
Langages à typage dynamique et langages à typage statique
Gestion de la mémoire en Python et Rust
03 Installation de Rust et de l'environnement de développement Rust
Méthode d'installation par système d'exploitation
__Installer sur Windows
Installation sur macOS / Linux
Comment mettre à jour votre installation de Rust vers la dernière version
Environnement de développement pour le développement Rust
__Installer Visual Studio Code
__Installation de Python
__Bonjour le monde!
04 Premiers pas avec Rust
Afficher le texte à l'écran
Afficher les valeurs des variables en les incluant dans une chaîne de caractères
Essayez les quatre opérations arithmétiques de base
05 Résolution des problèmes FizzBuzz avec Rust et Python
__Se rapprocher un peu plus de la rouille
Résoudre les problèmes FizzBuzz avec Python
Résoudre les problèmes de FizzBuzz avec Rust
Utilisez les instructions __for et if pour afficher les multiples de 3 et les nombres contenant 3 sous forme de tableau.
06 Création d'une table de multiplication avec Rust et Python
Composition de la table de multiplication
Créer une table de multiplication avec Python
Créer une table de multiplication avec Rust
Augmenter le niveau d'achèvement
Convertir le calendrier occidental en nom de l'ère Joseon
07 Définition de la variable et suite de Fibonacci
Qu'est-ce que la suite de Fibonacci ?
Comment définir des variables en Rust ?
__Avantages des variables immuables
__[Note du traducteur] Variable permettant d'assigner temporairement des valeurs
__Comparer les prix des produits
08 Calcul des types de variables et des combinaisons de modifications
__Calcul des combinaisons de monnaie
Types de variables de __Rust
Comment déterminer la plage d'entiers disponibles ?
Calcul des combinaisons de modifications sans utiliser l'inférence de type
09 Définition de la fonction et chiffrement de César
__Qu'est-ce que le chiffre de César ?
Définition et appel de la fonction
Rendre le chiffrement de César un peu plus élégant
Calcul de 10 tableaux et de 100 nombres premiers
Se familiariser davantage avec Rust et les calculs décimaux
Qu'est-ce que __référence ?
syntaxe de l'instruction __for
Tableau de variables __[Colonne] - À propos des vecteurs
Déclarez une valeur en utilisant if dans la variable __[Column]

Chapitre 2 : Créer des outils simples avec Rust

01 Comment utiliser Cargo et calculer de grands nombres
__Qu'est-ce que le système de construction de Rust, 'Cargo' ?
Démarrer un projet avec __Cargo
Essayez d'utiliser la caisse publique
__[Note du traducteur] Transport de marchandises et construction de cargaison
__[Colonne] 'notation de caisse externe ***'
__[Column] 'use' pour charger des modules à partir d'une caisse
02 Lancer les dés et générer automatiquement le labyrinthe
Faisons un lancer de dés
Génération automatique de labyrinthes à l'aide de nombres aléatoires
03 Type vectoriel, Création de cartes de bingo
Création d'un outil qui génère automatiquement des grilles de bingo
Créer des cartes de bingo avec Python
Fabriquer des cartes de bingo avec de la rouille
__Types de tableaux et de vecteurs redimensionnables
Création de cartes de bingo à l'aide de vecteurs
04 Apports standard et mesure de l'obésité
Diagnostic de l'obésité par l'IMC
__[Note du traducteur] Gestion des types de résultats
Gestion des entrées standard en Rust
__[Colonne] littéral numérique
05 Agrégation des enquêtes
Structure de comptage des votes de popularité
__Consultez comment utiliser HashMap
06 Création d'un outil utilisable en ligne de commande
Outil permettant d'ajouter des arguments de ligne de commande
Lit et affiche le contenu du fichier texte spécifié
__[Note du traducteur] Ajout d'une gestion du cas où un fichier inexistant est spécifié
Créer un outil pour additionner des valeurs numériques stockées dans un fichier texte
07 Lecture de fichiers et création d'un dictionnaire anglais-coréen
Création d'un dictionnaire pour une utilisation en ligne de commande
Enregistrez les résultats d'exécution de FizzBuzz dans un fichier et comparez-les.
__[Note du traducteur] méthode de déballage
__Création d'un dictionnaire anglais-coréen
Écrire le contenu dans __file
Gestion des erreurs survenant lors du traitement des fichiers __
08 Création d'un outil de recherche récursive de fichiers
__Qu'est-ce que la récursivité ?
Création d'un programme de recherche de fichiers récursif
Représentation du chemin de fichier de __Rust
__[Colonne] Les expressions de chemin de fichier varient en fonction du système d'exploitation.
Créer votre propre commande __tree

Chapitre 3 : Grammaire – Système de propriété et types de données

01 Le premier défi : le système de propriété
__Qu'est-ce qu'un système de propriété ?
__[Colonne] Le système de propriété est-il unique à Rust ?
__Considérer la gestion de la mémoire comme une forme de « propriété »
Les trois principes fondamentaux de la propriété
__[Colonne] Difficultés d'allocation et de libération de mémoire
__Types qui ne sont pas soumis au système de propriété
__[Colonne] Propriété lors de la duplication
02 Emprunts et références
__'Emprunt'
__La propriété est transférée à l'appel de fonction
__Une fonction qui renvoie une référence
__Utiliser des références mutables comme arguments
__[Colonne] println! Comment utiliser la macro
03 Les tuples, les tableaux et les tranches de Rust
__Qu'est-ce qu'un tuple ?
Tableaux en Rust
__Quel est le type de tranche ?
04 Structures de Rust
Qu'est-ce qu'une structure ?
Calcul de l'IMC à l'aide de la structure __
Établir des critères pour déterminer l'obésité
Conventions de dénomination des structures et des variables
05 Cordes en Rust
Chaînes de caractères en Rust
Les chaînes de caractères de Rust sont en UTF-8.
Utilisation de tranches dans __&str
Conversion mutuelle de __&str et String
__Durée de vie
06 Se familiariser avec la manipulation de chaînes de caractères en Rust
__Affichage d'une chaîne de caractères au format binaire de l'éditeur
Obtenir une sous-chaîne de __
Recherche de chaînes
__Shadowing - Redéclaration de variables dans une portée
__String Split
Lecture et écriture de fichiers encodés en __EUC-KR
07 Variables globales et non sécurisées
Une langue qui poursuit des idéaux et affronte la réalité
Génération de nombres pseudo-aléatoires
__Préparez le générateur de nombres aléatoires
__Structure de génération de nombres aléatoires de bonne qualité
Utilisation des variables globales en Rust
Générer des nombres pseudo-aléatoires sans utiliser __unsafe
__[Note du traducteur] Xorshift
08 Cadre de test
Tests faciles avec __Cargo
Créez un code de test et vérifiez les résultats.
__Test des valeurs de tableau et de vecteur
__struct test

Chapitre 4 : Grammaire – Méthodes, génériques et traits

01 Structures et méthodes
Définition d'une méthode dans une __struct
Calcul de l'IMC à l'aide de structures et de méthodes
__Mise à jour de la structure
Copier la structure __[Colonne]
__[Note du traducteur] Propriétés de copie de structure
02 Caractéristiques qui définissent un comportement commun
Qu'est-ce qu'un trait __ ?
Méthode par défaut de __Trait
03 Générique
__Revue des génériques
__Définition de fonction générique
__Spécifier les génériques dans les structures
04 Itérateur
__Vérifiez le contenu de base de l'itérateur
trait __iterator
05 Énumérations et correspondance de modèles
Rust, un langage « à l’abri des valeurs nulles ».
__Définition d'une énumération
correspondance de motifs
06 Modules, caisses et paquets de Rust
__Pourquoi devrions-nous séparer par fonction ?
__[Colonne] Comment ignorer le dépassement de capacité de l'opération
__Comment séparer les modules en fichiers
__[Column] 'édition' dans le fichier Cargo.toml
__[Note du traducteur] Sous-modules comportant 2 couches ou plus
__Spécification des modules avec des chemins relatifs
__emballer
__[Note du traducteur] Espace de travail
07 Révéler sa propre caisse
Enregistrez votre caisse sur __crates.io
__RPN (Notation polonaise inverse)
Publiez votre caisse sur __crates.io

Chapitre 5 : Applications – Photos / Musique / Réseaux

01 Création d'un outil de traitement d'images
Gestion des fichiers image
__Créer un outil d'inversion des couleurs
Méthode de vignette __[Colonne]
02 Jouer de la musique avec la synthèse d'ondes
Synthèse et lecture de la parole
Créer un projet __sinewave
__Création musicale
__Créer un joueur MML
03 Création de bandes originales de jeux vidéo des années 80
__Créer un synthétiseur avec différentes formes d'onde
vague en dents de scie
Affichage des formes d'onde en Python
__onde carrée
onde triangulaire
bruit blanc
onde de pouls
__Source sonore FM
04 Réseaux et traitement parallèle
__Fil
__Traitement parallèle des calculs avec des threads
05 Création d'un programme de chat simple
Service de chat simple
__Utilisez des fils
Serveur de chat
Client de chat
06 Création d'un programme Web
Que signifie créer des programmes web avec Rust ?
Framework web Rust
__Actix Web
Tide, un framework web pour le développement rapide
__[Note du traducteur] Envoi par la méthode POST 1
Entrez votre nom pour saluer
__[Note du traducteur] Envoi par la méthode POST 2
Comparaison du développement web avec Rust et Python

Chapitre 6 : Applications – Gestion de la mémoire et intégration avec d’autres langages

01 Création d'une macro
__Les macros de Rust
__Définition d'une macro
Création d'une macro pour initialiser facilement une __HashMap
Appel récursif de macro
Afficher le code généré par la macro - Extension de macro
__[Colonne] Macro procédurale
02 Comprendre la gestion de la mémoire avec les listes unidirectionnelles
__Implémentation d'une liste chaînée à sens unique
__Implémentation d'une méthode dans une liste simplement chaînée
03 Compteur de référence mémoire
Inconvénients d'une liste simplement chaînée utilisant __Box〈T〉
Le type __Rc〈T〉 permet la gestion de la mémoire par comptage de références
Utilisation du type __RefCell〈T〉
__Types faibles pour éviter les références circulaires
Création d'une liste doublement chaînée avec __Rc〈T〉 et Weak〈T〉
Arc〈T〉 et Mutex〈T〉 pour la sécurité du filetage
04 Création d'un mini-langage avec un générateur d'analyseurs syntaxiques
__Pourquoi créer sa propre langue ?
Création d'une calculatrice d'addition simple
__Créer une calculatrice capable d'effectuer des opérations arithmétiques
__Créer un mini-langage
05 Langage C, Intégration avec Python
__FFI
Appeler des bibliothèques du langage C depuis Rust
Appel d'une bibliothèque créée en Rust depuis le langage C
Gestion des types de données du langage C en Rust
Créer une bibliothèque dynamique et l'utiliser en Python
06 Assemblage Web
Qu'est-ce que WebAssembly ?
Utilisation de WebAssembly avec Rust
__Créer un terrain de jeu linguistique pour les tomates
07 Communication asynchrone et extraction de données
Créer des outils fréquemment utilisés avec Rust
Traitement asynchrone
Traitement asynchrone en Rust
Principes de base du traitement asynchrone
__Télécharger en continu des images à partir d'une page Web
08 Création d'un outil de chiffrement
__Créer un outil de chiffrement
Outil de chiffrement en ligne de commande
__Compiler avec WebAssembly et exécuter dans le navigateur

Annexe A – Messages d’erreur et conseils de résolution

Annexe B – Glossaire de la rouille

Annexe C – Résumé de la syntaxe de base de Rust
","
Image détaillée
Image détaillée 1
","
Avis de l'éditeur
★ Ce que ce livre aborde ★

◎ Comparaison de Python et Rust
◎ La grammaire de Rust et ses différentes fonctions
◎ Création d'un synthétiseur et d'une fonction de chat en Rust
◎ Gestion de la mémoire
◎ Utilisation de bibliothèques de traitement d'images
◎ Comment établir des liens avec le langage C, Python, etc.
◎ Création de WebAssembly
"]
SPÉCIFICATIONS DES PRODUITS
- Date de publication : 3 janvier 2023
- Nombre de pages, poids, dimensions : 580 pages | 180 × 240 × 24 mm
- ISBN13 : 9791158393908
- ISBN10 : 1158393903

Vous aimerez peut-être aussi

카테고리