issue156:c_c
Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente | ||
issue156:c_c [2020/04/26 08:52] – d52fr | issue156:c_c [2020/04/28 12:49] (Version actuelle) – andre_domenech | ||
---|---|---|---|
Ligne 7: | Ligne 7: | ||
https:// | https:// | ||
- | Bon ! Allez ! Revenons au développement en Rust - car DareDevil14 et Ellin se sont plaint | + | Bon ! Allez ! Revenons au développement en Rust, car DareDevil14 et Ellin se sont plaints |
- | Pour dire vrai, je déteste un langage dans lequel un simple « hello world » prend 2 Mo (!!), juste parce que « on ne se soucie pas de la taille ». Bon, assez rälé. Nous allons quand même le regarder puisque les retours laissent penser que c'est ce que souhaitent les lecteurs. | + | À vrai dire, je déteste un langage dans lequel un simple « hello world » prend 2 Mo (!!), juste parce qu'« on ne se soucie pas de la taille ». Bon, assez râlé. Nous allons quand même le regarder puisque les retours laissent penser que c'est ce que souhaitent les lecteurs. |
**For everyone who wants to learn more, I will go through installing Rust first, so you can follow along if you like. This article explains how to install Rust in Ubuntu 18.04 (but 19.x should be the same), using the ' | **For everyone who wants to learn more, I will go through installing Rust first, so you can follow along if you like. This article explains how to install Rust in Ubuntu 18.04 (but 19.x should be the same), using the ' | ||
Ligne 15: | Ligne 15: | ||
If the download is interrupted, | If the download is interrupted, | ||
- | Pour tous ceux qui veulent en apprendre plus, je vais d' | + | Pour tous ceux qui veulent en apprendre plus, je vais d' |
- | Si le téléchargement s' | + | Si le téléchargement s' |
**Once it is done, run: | **Once it is done, run: | ||
Ligne 29: | Ligne 29: | ||
If you get a reply, all went well. | If you get a reply, all went well. | ||
- | ** At the time of writing, rust is version 1.41.0. If yours differs, that is OK. Just make sure it is a higher number, not a lower one. | + | At the time of writing, rust is version 1.41.0. If yours differs, that is OK. Just make sure it is a higher number, not a lower one. |
Look up: “men at work - cargo” in your browser (an ancient Australian band). You will see an image of a plane and a crate. I will be using binary crates, as it is easy for n00bs like you and me. Think of cargo in this way. Delivering crates, containing what you need. Maybe even listen to “Dr Heckyll and Mr Jive”, now that you have looked it up?** | Look up: “men at work - cargo” in your browser (an ancient Australian band). You will see an image of a plane and a crate. I will be using binary crates, as it is easy for n00bs like you and me. Think of cargo in this way. Delivering crates, containing what you need. Maybe even listen to “Dr Heckyll and Mr Jive”, now that you have looked it up?** | ||
Ligne 36: | Ligne 36: | ||
rustc --version | rustc --version | ||
- | ( tiret tiret, sans espaces) | + | (tiret tiret, sans espace) |
cargo --version | cargo --version | ||
- | ( tiret tiret, sans espaces) | + | (tiret tiret, sans espace) |
- | Si vous recevez une réponse, tout va bien. | + | Si vous recevez une réponse, tout s' |
- | ** Au moment où j' | + | Au moment où j' |
- | Cherchez | + | Cherchez « men at work - cargo » dans votre navigateur (c'est un ancien groupe australien). Vous verrez l' |
**Type: | **Type: | ||
Ligne 63: | Ligne 63: | ||
cargo new --bin rustfun | cargo new --bin rustfun | ||
- | (L' | + | (L' |
- | Une nouvelle caisse binaire nommée rustfun sera créée (une dossier et les fichiers | + | Une nouvelle caisse binaire nommée rustfun sera créée (un dossier et les fichiers |
- | Si vous ouvrez main.rs dans le dossier src, vous devriez voir un simple « hello world » qui a été mis là pour vous. Avant que vous entriez dans le dossier src, vous devriez avoir vu un fichier cargo.toml. Vous pouvez l' | + | Si vous ouvrez main.rs dans le dossier src, vous devriez voir un simple « hello world » qui a été mis là pour vous. Avant que vous entriez dans le dossier src, vous devriez avoir vu un fichier cargo.toml. Vous pouvez l' |
- | La raison pour laquelle j' | + | La raison pour laquelle j' |
**Here is what the installation looks like on my machine: | **Here is what the installation looks like on my machine: | ||
Ligne 83: | Ligne 83: | ||
Voici à quoi ça ressemble sur ma machine : | Voici à quoi ça ressemble sur ma machine : | ||
- | Bien ! Maintenant qu'ile st installé, regardons les bases et comment rust chaque point. | + | Bien ! Maintenant qu'il est installé, regardons les bases et comment rust traite |
Variables | Variables | ||
- | comme dans les autres langages de programmation, | + | comme dans les autres langages de programmation, |
- | Dans Rust, les affectations aux variables sont préfixées par le mot « let ». Par exemple, : let my_box = 1; Aussi, quand vous assignez une valeur à une variable (quand vous la déclarez), vous ne pouvez pas changer sa valeur (elle immutable). Ce qui suit vous DONNERA une erreur, pour la raison ci-dessus (voir ci-dessus). | + | Dans Rust, les affectations aux variables sont préfixées par le mot « let ». Par exemple : let my_box = 1; De plus, quand vous assignez une valeur à une variable (quand vous la déclarez), vous ne pouvez pas changer sa valeur (elle est immuable). Ce qui suit vous DONNERA une erreur, pour la raison ci-dessus (voir ci-dessous). |
**We will cover more later, but for now, just know about this in Rust. The command ‘cargo run’, will simply tell you that it is immutable. Rust is supposed to be error resistant, so it assumes that if you don’t explicitly tell it that a variable can change, it can’t. Okay... How do we do that? With the ‘mut’ keyword, example: let mut my_num = 1; | **We will cover more later, but for now, just know about this in Rust. The command ‘cargo run’, will simply tell you that it is immutable. Rust is supposed to be error resistant, so it assumes that if you don’t explicitly tell it that a variable can change, it can’t. Okay... How do we do that? With the ‘mut’ keyword, example: let mut my_num = 1; | ||
Ligne 97: | Ligne 97: | ||
Remember I said all variables in Rust have a type? Well, Rust figures out the type in the background for you. This does not mean Rust type-casts your variable sweaty_shopowner as ‘sleazy’, | Remember I said all variables in Rust have a type? Well, Rust figures out the type in the background for you. This does not mean Rust type-casts your variable sweaty_shopowner as ‘sleazy’, | ||
- | Nous en parlerons | + | Nous en dirons davantage |
Simplement en ajoutant ce « mut », l' | Simplement en ajoutant ce « mut », l' | ||
- | Vous souvenez-vous que j'ai dit que toutes les variables dans Rust ont un type ? Eh bien, pour vous, Rust indique le type en arrière-plan. | + | Vous souvenez-vous que j'ai dit que toutes les variables dans Rust ont un type ? Eh bien, pour vous, Rust indique le type en arrière-plan. |
**Example: | **Example: | ||
Ligne 111: | Ligne 111: | ||
Once you build or run your file, you will see a new file named “cargo.lock”. This file is automatically generated from your cargo.toml file. Be sure your details are correct in the cargo.toml file, before building. There will also be a “target” folder created. Inside will be a debug folder with lots of sub-folders. Feel free to peruse these at your leisure. There should also be an executable file with the same name as your project. Run it now to see if your rust program works. Mine does (shown top right).** | Once you build or run your file, you will see a new file named “cargo.lock”. This file is automatically generated from your cargo.toml file. Be sure your details are correct in the cargo.toml file, before building. There will also be a “target” folder created. Inside will be a debug folder with lots of sub-folders. Feel free to peruse these at your leisure. There should also be an executable file with the same name as your project. Run it now to see if your rust program works. Mine does (shown top right).** | ||
+ | |||
+ | Exemple : | ||
+ | let my_shoesize: | ||
+ | |||
+ | Pour le prochain numéro, nous passerons à une autre partie de Rust et présenter comment Rust traite, eh bien disons, les boucles / les branchements conditionnels ? (Retrouvez-moi sur Telegram si vous voulez quelque chose d' | ||
+ | |||
+ | Maintenant un mot rapide sur les fichiers et dossiers. | ||
+ | |||
+ | Une fois que vous avez compilé ou lancé votre fichier, vous verrez un nouveau fichier appelé « cargo.lock ». Ce fichier est généré automatiquement à partir du fichier cargo.toml. Assurez-vous que vos détails sont corrects dans le fichier cargo.toml, avant de compiler. Un dossier « cible » sera créé aussi. À l' | ||
**The code used in this demonstration is shown right. | **The code used in this demonstration is shown right. | ||
Ligne 123: | Ligne 132: | ||
Then println!(“”); | Then println!(“”); | ||
+ | |||
+ | Le code utilisé dans cette démonstration est présenté à droite. | ||
+ | |||
+ | Parcourons-le. | ||
+ | |||
+ | Chaque programme en Rust nécessite une fonction main, comme celle-ci : fn main () {} | ||
+ | |||
+ | À l' | ||
+ | |||
+ | Nous avons augmenté la variable de 1 ; c'est pareil que num = num + 1 | ||
+ | |||
+ | Ensuite println!("" | ||
**What you may not know is that {} inside of the print function; it’s a place holder to plug in a value. The value we plug in is outside of the “” and after a comma. In our case, the variable, num (more on format specifiers later). | **What you may not know is that {} inside of the print function; it’s a place holder to plug in a value. The value we plug in is outside of the “” and after a comma. In our case, the variable, num (more on format specifiers later). | ||
If you have any questions or comments, e-mail us: misc@fullcirclemagazine.org** | If you have any questions or comments, e-mail us: misc@fullcirclemagazine.org** | ||
+ | |||
+ | Ce que vous ne savez peut-être pas, c'est le pourquoi des {} dans la fonction print ; c'est une réservation de place pour y mettre une valeur. La valeur que nous y mettons est en dehors des "" | ||
+ | |||
+ | Si vous avez des questions ou des commentaires, | ||
issue156/c_c.1587883936.txt.gz · Dernière modification : 2020/04/26 08:52 de d52fr