IntelliJ Rust Learning Courses News Project-Based Learning

Apprenez Rust avec les IDE de JetBrains

Read this post in other languages:

Il n’y a pas d’approche idéale pour apprendre un langage de programmation, chacun peut choisir celle qui lui convient le mieux, que cela soit en consultant des contenus (livres, blogs, tutoriels, documentation, discussions Reddit, réponses données dans StackOverflow, etc.), en posant des questions à la communauté, en regardant des exemples, en réalisant des projets personnels, ou en essayant de résoudre des problèmes de code. Certains font même tout cela. On commence généralement par se familiariser avec les fonctionnalités du langage et les façons de les combiner dans des programmes. Puis, on découvre différentes approches de résolution des problèmes. Enfin, on passe de l’utilisation de composants de bibliothèques standards à celle de composants de bibliothèques externes, et on apprend comment tester, déboguer, écrire des journaux, profiler des applications, etc.

Rust ne fait pas exception : aucune ressource pédagogique n’est suffisante à elle-seule pour permettre de le maîtriser complètement. Toutefois, afin de faciliter l’apprentissage de ce langage, nous avons élaboré Learn Rust, un nouveau cours JetBrains gratuit qui couvre une grande partie des besoins des apprenants.

Ce cours est notamment basé sur le contenu du livre The Rust Programming Language, de Steve Klabnik et Carol Nichols, avec des contributions de la communauté Rust, et reprend la plupart des exercices du célèbre ensemble rustlings. Notre équipe a par ailleurs conçu environ un quart des exercices spécifiquement pour ce cours. Il propose une nouvelle façon d’apprendre Rust, en fournissant une combinaison de textes et d’exercices judicieuse, disponible dans plusieurs de nos IDE.

Pourquoi choisir Rust

Il ressort des résultats de l’enquête StackOverflow developer survey que Rust est cité comme langage de programmation le plus apprécié des développeurs depuis 7 ans, et qu’il est aussi celui qui suscite le plus d’intérêt (à égalité avec Python).

Rust a récemment fait son entrée dans la liste des langages pris en charge pour l’écriture des composants du noyau Linux, et se classe en deuxième position de cette liste, juste après C ! Libcurl, l’une des bibliothèques les plus utilisées pour récupérer les données des réseaux évolue progressivement vers Rust. Google indique que l’utilisation de code Rust dans l’implémentation d’Android augmente de version en version, ce qui l’aide à réduire le risque de vulnérabilité et à améliorer la sécurité. Microsoft utilise Rust pour sécuriser la mémoire dans ses produits et Amazon pour assurer la durabilité de son infrastructure.

Les développeurs utilisant d’autres langages de programmation, tels que JavaScript ou Python, optent souvent pour Rust lorsqu’ils cherchent à obtenir de meilleures performances avec les outils et les bibliothèques.

Enfin, la communauté Rust est particulièrement accueillante, toujours prête à aider et à encourager les utilisateurs débutants.

Cela dit, la courbe d’apprentissage de Rust étant difficile, il est recommandé d’être assidu et de suivre une méthode définie. C’est précisément ce que nous souhaitons offrir avec le cours Learn Rust.

Apprendre Rust dans un IDE

Notre cours Learn Rust est construit sur la plateforme éducative fournie par le plugin JetBrains Academy. Ce plugin est disponible dans de nombreux IDE de JetBrains, parmi lesquels CLion, GoLand et IntelliJ IDEA Community Edition, et donne accès à des cours gratuits pour plusieurs langages de programmation.

Nos cours basés sur des IDE incluent la mise à disposition de matériel pédagogique, l’exploration d’exemples de code et la résolution de problèmes. Chaque leçon comprend une séquence d’étapes, composées de contenus théoriques avec des exemples et des problèmes à résoudre. Les étapes du problème constituent un moyen facile de vérifier vos solutions.

Lorsque vous étudiez un cours dans un IDE, vous disposez d’une fenêtre dédiée avec 3 panneaux : une vue du cours, un éditeur de code et une description, comme dans la capture d’écran ci-dessous.

Apprendre un langage via un IDE vous permet par ailleurs d’acquérir une expérience pratique du développement logiciel. En effectuant les exercices, vous écrivez, vérifiez, corrigez, exécutez, déboguez et testez le code, comme un développeur le fait dans le cadre de ses activités quotidiennes. À l’issue du cours, vous aurez une solide connaissance d’un langage de programmation et saurez utiliser un outil de développement professionnel.

Consultez la page IntelliJ IDEA for Education pour en savoir plus sur les avantages des cours de programmation dans un IDE.

Spécificités du cours

Tout comme le livre sur lequel il est basé, le cours Learn Rust part du principe que vous avez déjà une connaissance pratique d’un langage de programmation. Aussi, il apprend à programmer spécifiquement en Rust mais ne propose pas d’introduction à la programmation traitant des sujets de base.

Le cours suit la structure de The Rust Programming Language, et contient les sections suivantes :

  • Introduction
  • Concepts de programmation courants
  • Comprendre le concept de propriété
  • Structs, Methods, Enums et filtrage par motif
  • Modules
  • Collections standards
  • Gestion des erreurs
  • Types génériques, traits et durées de vie
  • Écrire des tests automatisés
  • Types de bibliothèque standards
  • Fearless Concurrency
  • Macros

Il comprend 331 étapes au total, dont 210 étapes théoriques et 121 étapes de résolution de problèmes. Chaque étape se présente sous la forme d’un paquet Cargo, ce qui permet de présenter et d’apprendre non seulement les fonctionnalités de base du langage mais aussi les modules, les crates, les macros, les tests au niveau du paquet, les dépendances externes, etc.

Outre la lecture de contenus, chacune d’elle implique de travailler avec du code. Si le code de l’étape contient la fonction principale, il peut être exécuté :

Dans la plupart des étapes de résolution de problème, vous n’avez accès qu’à un seul fichier de code (comme dans la capture d’écran ci-dessus), mais la structure de l’ensemble du paquet est parfois disponible pour vous permettre d’examiner des composants importants, comme les fichiers de description du projet :

À partir de là, vous pouvez accéder à la documentation d’une crate ou connaître les versions disponibles.

Naturellement, lorsque nous parlons de tester les paquets Rust, nous exposons les fichiers de tests :

Avant d’essayer de vérifier votre solution en cliquant sur le bouton Check, vous pouvez exécuter des tests individuels ou les exécuter tous en même temps .

Ces fonctionnalités du cours ont pour but de vous présenter dès le départ les bonnes pratiques du développement logiciel dans un IDE. Nous sommes convaincus qu’avoir l’opportunité d’utiliser des outils de développement professionnels dès le début de votre parcours d’apprentissage constitue un avantage majeur. La prise en charge de premier ordre de Rust qu’offrent les IDE de JetBrains vous permet de vous familiariser avec de tels outils tout en apprenant le langage.

Apprenez Rust et dites-nous ce que vous en pensez !

Si ce cours ne suffit pas pour acquérir une maîtrise complète de Rust, nous pensons qu’il constitue un bon point de départ, et nous espérons que vous apprécierez d’étudier Rust avec nous ! N’hésitez pas à partager vos retours dans la section des commentaires ci-dessous ou en nous contactant à academy@jetbrains.com.

Article original en anglais de :

Delphine Massenhove

Vitaly Bragilevsky

image description