@Mathieu Nivoliez

Débuter avec Rust : Présentation et installation

2017-09-09 / 3 minutes.

Bonjour, aujourd'hui on va parler de Rust.

"Mais tu en parles souvent non?"

Oui, raison de plus pour correctement vous introduire ce langage qui m'a séduit.

"OK, on t'écoute"

Commençons par le commencement. Rust est un langage de programmation compilé. C'est-à-dire que le code que vous écrivez sera traduit vers un langage que l'ordinateur peut comprendre. Cette traduction sera l'exécutable. Rust est également un langage fortement typé. Autrement dit, les variables (nous y reviendrons) sont d'un certain type. Enfin, Rust est présenté sur son site officiel par:

Rust un langage de programmation système ultra-rapide, qui prévient les erreurs de segmentation et garantit la sûreté entre threads

"Erreur de segmentation? Sûreté entre les threads?"

Si vous n'avez jamais pratiqué un langage dit "bas-niveau" tel que le C ou le C++, ces termes vous sont certainement nouveaux. Je vais les définir rapidement, mais nous y reviendrons une autre fois.

Une erreur de segmentation c'est quand votre programme tente d'accéder à de la mémoire qui ne lui pas été allouée. C’est comme si l’on vous donnait un bureau sur lequel travailler, et que vous vous étalé sur celui de votre collègue. Votre collègue risque de s'énerver, et dans le cas de votre programme, il va s’arrêter brutalement.

Pour les threads, il s'agit de "processus légers" qui peuvent fonctionner en parallèle. Imaginez un tas de vaisselle à faire, vous pouvez utiliser plusieurs personnes pour la faire. Le danger réside dans le cas où deux personnes tenteraient de laver la même assiette en même temps.

Rust dit prévenir ces deux risques. Au cours de cette série, nous aurons l'occasion de montrer comment.

"OK, mais c'est encore un peu flou..."

C'est normal. Mais on y reviendra plus tard. C'est des notions compliquées que vous viendrez à comprendre avec la pratique.

"D'accord. On commence?"

Tout à fait. Et première chose à faire est d'installer Rust. Pour ce faire, nous allons utiliser l'utilitaire Rustup. Vous devrez vous munir d'une console afin de taper les commandes.

Si vous êtes sur Linux ou Mac, la commande suivante devrait suffire:

curl https://sh.rustup.rs -sSf | sh

Si vous êtes sous Windows, rendez-vous sur le site de Rustup pour télécharger l’exécutable, puis suivez les instructions.

Ensuite, nous allons utiliser Cargo!

"Cargo?"

C'est un outil de Rust. Placez-vous dans le dossier de votre choix:

Pour Linux

cd ~/workspace

Pour Windows

cd %USERPROFILE%\projects

Et ensuite

cargo new hello_world --bin
cd hello_world

Le --binpermet de signifier à Cargo que nous allons faire un exécutable. Sans cette option, il créerait une librairie.

Dans le dossier nouvellement créé, nous pouvons voir un dossier srcqui contiendra nos sources, et un fichier Cargo.tomlqui contient les informations relative à notre projet:

[package]
name = "hello_world"
version = "0.1.0"
authors = ["Mathieu Nivoliez"]

[dependencies]

Regardons maintenant le main.rsdans le dossier src:

fn main() {
    println!("Hello, world!");
}

"Et comment lit-on ça?"

De la manière suivante: nous avons une fonction fn nommée main()qui, lorsqu’appelée, exécutera la macro println!avec en paramètre la chaîne de caractères "Hello, world!"ce qui affichera donc le message "Hello, world!" lors de l'exécution.

Nous pouvons lancer donc la commande cargo runafin d'afficher la chose dans la console.

Nous reviendrons lors d'un prochain article sur les fonctions et macros.

Pour le moment, nous avons installé Rust et créé un hello world.

À bientôt, pour un prochain article sur comment débuter avec Rust.

-- Mathieu

 

Sources: Le livre Rust