56 points par GN⁺ 2024-05-18 | 1 commentaires | Partager sur WhatsApp
  • Conçu pour apprendre les concepts fondamentaux de Rust un par un, à travers la pratique
  • Permet d’apprendre la syntaxe, le système de types, la bibliothèque standard et l’écosystème
  • Aucune connaissance préalable de Rust n’est nécessaire, mais des bases dans un autre langage de programmation sont requises
  • Aucune connaissance préalable de la programmation système ou de la gestion de la mémoire n’est non plus nécessaire
  • Il est possible de partir de zéro et de construire progressivement ses connaissances en Rust, par petites étapes
  • À la fin du parcours, après avoir résolu environ 100 exercices, vous aurez suffisamment confiance pour aborder des projets Rust de petite à moyenne taille

Méthodologie

  • Ce parcours repose sur le principe du "Learn By Doing"
  • Conçu pour être interactif et centré sur la pratique
  • Pensé pour être suivi sur 4 jours dans un cadre de formation en présentiel
    • Chaque participant avance à son propre rythme, avec un formateur expérimenté pour guider et répondre aux questions
  • Il est possible de suivre le parcours seul, mais il est recommandé de se faire aider par un ami ou un mentor
  • Les solutions de tous les exercices sont disponibles dans la branche de solutions du dépôt GitHub

Structure

  • Le parcours est divisé en sections dans la partie gauche de l’écran
  • Chaque section introduit un nouveau concept ou une nouvelle fonctionnalité du langage Rust
  • Afin de vérifier la compréhension, chaque section contient des exercices à résoudre
  • Les exercices se trouvent dans le dépôt GitHub associé
  • Avant de commencer le parcours, il faut cloner le dépôt sur votre machine locale
  • Si votre clé SSH est configurée : git clone git@github.com:mainmatter/100-exercises-to-learn-rust.git
  • Si vous utilisez une URL HTTPS : git clone https://github.com/mainmatter/100-exercises-to-learn-rust.git
  • Il est recommandé de travailler sur une branche pour suivre facilement votre progression et récupérer si nécessaire les mises à jour du dépôt principal
  • Tous les exercices se trouvent dans le dossier exercises
  • Chaque exercice est structuré comme un package Rust
  • Le package inclut l’exercice lui-même, les consignes sur le travail à effectuer (src/lib.rs) ainsi qu’une suite de tests qui vérifie automatiquement la solution

Présentation de l’auteur

  • Ce parcours a été créé par Luca Palmieri, Principal Engineering Consultant chez Mainmatter
  • Luca utilise Rust depuis 2018 et a travaillé chez TrueLayer et AWS
  • Il est l’auteur de "Zero to Production in Rust", une ressource essentielle pour apprendre à construire des applications backend en Rust
  • Il est aussi l’auteur et mainteneur de plusieurs projets Rust open source, dont cargo-chef, Pavex et wiremock

1 commentaires

 
GN⁺ 2024-05-18
Avis Hacker News

Résumé des commentaires de Hacker News

  • Recommandation de Rustlings

    • Mention d’une ressource d’apprentissage similaire appelée Rustlings. Le principe consiste à modifier des instructions todo dans les fichiers afin que le code compile et que tous les tests passent, ce qui en fait une méthode d’apprentissage interactive. Lien vers Rustlings
  • Zero to Production in Rust

    • Cet ensemble d’exercices a été créé par l’auteur du livre "Zero to Production in Rust". Ce livre est connu pour sa couverture montrant un crabe sur un crâne humain. Lien vers Zero to Production
  • Recommandation pour débuter avec Rust

    • Quelqu’un a parcouru les sections correspondant à un niveau de connaissance de base en Rust et a apprécié le style sans fioritures. Après environ 30 minutes d’utilisation, il estime que cette ressource pourrait devenir sa meilleure recommandation pour découvrir Rust. Il a ensuite réalisé qu’elle avait été créée par le même auteur.
  • Astuces et tricks Rust

  • Demande d’avis de personnes ayant de l’expérience dans d’autres langages

    • Quelqu’un aimerait que des personnes familières avec des langages de programmation populaires et ayant terminé ces exercices partagent leur avis sur l’utilité réelle de cette ressource. Expérience en Java, Python, JS et C++.
  • Blog sur la méthode d’apprentissage

    • Un billet de blog a été écrit à propos de l’approche "Learn by doing". Lien vers le blog
  • Problème d’abstraction en Rust

    • Dans le code Rust, les abstractions fuient souvent. En raison des mécanismes de propriété, des détails d’implémentation sont exposés ou imposés.
  • Difficulté à trouver un emploi en Rust

    • Quelqu’un utilise Rust à titre personnel, mais après avoir été licencié, il a eu du mal à trouver un poste où il pourrait utiliser Rust. Les emplois utilisant Rust restent peu nombreux.
  • Comparaison avec Rustlings

    • Quelqu’un aimerait avoir l’avis de personnes ayant comparé cette ressource à Rustlings. Il a été très satisfait de Rustlings, mais se demande si cela vaut la peine de terminer aussi cette ressource.
  • Éloges adressés à l’auteur

    • Des compliments sont adressés à l’auteur et aux mainteneurs. Ils auraient facilement pu monétiser le projet, mais l’ont partagé gratuitement. Lien vers l’auteur