Skip to content

Commit b2b925b

Browse files
authored
Merge pull request #459 from ArmandDelessert/patch-1-js-03-code-quality
Apporte plusieurs corrections au chapitre 1.3 (Code Quality)
2 parents 0a13e0b + be600cc commit b2b925b

File tree

5 files changed

+33
-34
lines changed

5 files changed

+33
-34
lines changed

1-js/03-code-quality/01-debugging-chrome/article.md

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -18,13 +18,13 @@ Voici ce que vous devriez voir si vous le faites pour la première fois :
1818

1919
![](chrome-open-sources.svg)
2020

21-
Le bouton <span class="devtools" style="background-position:-172px -98px"></span> ouvre l'onglet avec les fichiers.
21+
Le bouton <span class="devtools" style="background-position:-172px -98px"></span> ouvre le volet avec les fichiers.
2222

2323
Cliquez dessus et sélectionnez `hello.js` dans l’arborescence. Voici ce qui devrait apparaître :
2424

2525
![](chrome-tabs.svg)
2626

27-
Ici nous pouvons voir 3 parties :
27+
Ici nous pouvons voir 3 parties :
2828

2929
1. Le volet **explorateur de fichiers** répertorie les fichiers HTML, JavaScript, CSS et autres fichiers, y compris les images jointes à la page. Des extensions Chrome peuvent également apparaître ici.
3030
2. Le volet **Editeur de Code** affiche le code source.
@@ -60,7 +60,7 @@ Nous pouvons toujours trouver une liste de points d'arrêt dans le volet de droi
6060
- Sauter rapidement au point d'arrêt dans le code (en cliquant dessus dans le volet de droite).
6161
- Désactiver temporairement le point d'arrêt en le décochant.
6262
- Supprimer le point d'arrêt en cliquant avec le bouton droit de la souris et en sélectionnant Supprimer.
63-
- … Et ainsi de suite
63+
- … Et ainsi de suite.
6464

6565
```smart header="Points d'arrêt conditionnels"
6666
*Clic droit* sur le numéro de ligne permet de créer un point d'arrêt *conditionnel*. Il ne se déclenche que lorsque l'expression donnée, que vous devez fournir lors de sa création, est vraie.
@@ -123,7 +123,7 @@ Il y a des boutons pour cela en haut du volet de droite. Actionnons-les.
123123
<span class="devtools" style="background-position:-146px -168px"></span> -- "Reprendre" : continue l'exécution, raccourci clavier `key:F8`.
124124
: Reprend l'exécution. S'il n'y a pas de points d'arrêt supplémentaires, l'exécution continue et le débogueur perd le contrôle.
125125

126-
Voici ce que nous pouvons voir après un clic dessus :
126+
Voici ce que nous pouvons voir après un clic dessus :
127127

128128
![](chrome-sources-debugger-trace-1.svg)
129129

@@ -137,11 +137,11 @@ Il y a des boutons pour cela en haut du volet de droite. Actionnons-les.
137137
<span class="devtools" style="background-position:-62px -192px"></span> -- "Step over": lance la commande suivante, mais *n'entre pas dans une fonction*, raccourci clavier `key:F10`.
138138
 : Similaire à la commande "Step" précédente, mais se comporte différemment si l'instruction suivante est un appel de fonction (pas une fonction intégrée, comme `alert`, mais une fonction qui nous est propre).
139139

140-
Si nous les comparons, la commande "Step" entre dans un appel de fonction imbriqué et interrompt l'exécution à sa première ligne, tandis que "Step over" exécute l'appel de fonction imbriqué de manière invisible pour nous, en sautant les fonctions internes.
140+
Si nous les comparons, la commande "Step" entre dans un appel de fonction imbriqué et interrompt l'exécution à sa première ligne, tandis que "Step over" exécute l'appel de fonction imbriqué de manière invisible pour nous, en sautant les fonctions internes.
141141

142-
L'exécution est alors suspendue immédiatement après cette fonction.
142+
L'exécution est alors suspendue immédiatement après cette fonction.
143143

144-
C'est bien si nous ne sommes pas intéressés à voir ce qui se passe dans l'appel de fonction.
144+
C'est bien si nous ne sommes pas intéressés à voir ce qui se passe dans l'appel de fonction.
145145

146146
<span class="devtools" style="background-position:-4px -194px"></span> -- "Step into", raccourci clavier `key:F11`.
147147
: Cela ressemble à "Step", mais se comporte différemment dans le cas d'appels de fonctions asynchrones. Si vous commencez seulement à apprendre le JavaScript, vous pouvez alors ignorer la différence, car nous n'avons pas encore d'appels asynchrones.
@@ -167,10 +167,10 @@ C’est pratique lorsque nous voulons faire plusieurs pas en avant, mais nous so
167167

168168
Pour afficher quelque chose sur la console depuis notre code, utilisez la fonction `console.log`.
169169

170-
Par exemple, cela affiche les valeurs de `0` à `4` sur la console :
170+
Par exemple, cela affiche les valeurs de `0` à `4` sur la console :
171171

172172
```js run
173-
// open console to see
173+
// ouvrir la console pour visualiser
174174
for (let i = 0; i < 5; i++) {
175175
console.log("value,", i);
176176
}
@@ -183,14 +183,14 @@ Si nous avons assez de logging dans notre code, nous pouvons voir ce qui se pass
183183
## Résumé
184184

185185
Comme nous pouvons le constater, il existe trois méthodes principales pour suspendre un script :
186-
1. A breakpoint.
186+
1. Les points d'arrêt (breakpoint).
187187
2. Les instructions du `debugger`.
188-
3. Une erreur (si les outils de développement sont ouverts et le bouton <span class="devtools" style="background-position:-90px -146px"></span> est "on")
188+
3. Une erreur (si les outils de développement sont ouverts et le bouton <span class="devtools" style="background-position:-90px -146px"></span> est activé)
189189

190190
En pause, nous pouvons déboguer -- examiner les variables et suivre le code pour voir où l’exécution s’est mal passée.
191191

192192
Il y a beaucoup plus d'options dans les outils de développement que celles couvertes ici. Le manuel complet est ici <https://developers.google.com/web/tools/chrome-devtools>.
193193

194194
Les informations de ce chapitre sont suffisantes pour commencer le débogage, mais plus tard, en particulier si vous utilisez beaucoup de fonctions de navigateur, allez-y et examinez les fonctionnalités plus avancées des outils de développement.
195195

196-
Oh, et vous pouvez aussi cliquer sur différents endroits des outils de développement et voir ce qui s’affiche. C’est probablement la voie la plus rapide pour apprendre les outils de développement. Ne pas oublier le clic droit aussi les menus contextuels !
196+
Oh, et vous pouvez aussi cliquer sur différents endroits des outils de développement et voir ce qui s’affiche. C’est probablement la voie la plus rapide pour apprendre les outils de développement. N'oubliez pas le clic droit et les menus contextuels !

1-js/03-code-quality/02-coding-style/article.md

Lines changed: 16 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -56,15 +56,15 @@ if (condition) {
5656
}
5757
```
5858

59-
Une construction sur une seule ligne, comme `if (condition) doSomething()`, est un cas important. Devrions-nous utiliser des accolades ?
59+
Une construction sur une seule ligne, comme `if (condition) doSomething()`, est un cas important. Devrions-nous utiliser des accolades ?
6060

6161
Voici les variantes annotées pour que vous puissiez juger de leur lisibilité :
6262

63-
1. 😠 Les débutants font parfois cela. C'est une mauvaise pratique! Les accolades ne sont pas nécessaires :
63+
1. 😠 Les débutants font parfois cela. C'est une mauvaise pratique ! Les accolades ne sont pas nécessaires :
6464
```js
6565
if (n < 0) *!*{*/!*alert(`Power ${n} is not supported`);*!*}*/!*
6666
```
67-
2. 😠 Lorsque vous n'utilisez pas d'accolades, évitez de passer pas à la ligne, il est facile de se tromper! :
67+
2. 😠 Lorsque vous n'utilisez pas d'accolades, évitez de passer pas à la ligne car il est facile de se tromper :
6868
```js
6969
if (n < 0)
7070
alert(`Power ${n} is not supported`);
@@ -80,14 +80,14 @@ Voici les variantes annotées pour que vous puissiez juger de leur lisibilité :
8080
}
8181
```
8282
83-
Pour un code tres court, une ligne est autorisée, par exemple. `if (cond) return null`. Mais la variante numéro 4 est généralement plus lisible.
84-
83+
Pour un code tres court, une ligne est autorisée, par exemple `if (cond) return null`. Mais la variante numéro 4 est généralement plus lisible.
8584
8685
### Longueur de la ligne
8786
88-
Personne n'aime lire une longue ligne horizontale de code. La meilleure pratique est de les scinder.
87+
Personne n'aime lire une longue ligne horizontale de code. La meilleure pratique est de la scinder.
8988
9089
Par exemple :
90+
9191
```js
9292
// les guillemets backtick ` permettent de scinder la chaîne de caractères en plusieurs lignes
9393
let str = `
@@ -115,13 +115,13 @@ La longueur de ligne maximale est convenue au niveau de l'équipe. C’est gén
115115
116116
Il existe deux types d'indentations :
117117
118-
- **Un retrait horizontal : 2(4) espaces.**
118+
- **Un retrait horizontal : 2 ou 4 espaces.**
119119
120-
Une indentation horizontale est faite en utilisant 2 ou 4 espaces ou le symbole horizontal de tabulation (key `key:Tab`). Lequel choisir est une vieille guerre sainte. Les espaces sont plus communs de nos jours.
120+
Une indentation horizontale est faite en utilisant 2 ou 4 espaces ou le symbole horizontal de tabulation (touche `key:Tab`). Lequel choisir est une vieille guerre sainte. Les espaces sont plus communs de nos jours.
121121
122122
Un des avantages des espaces sur les tabulations est qu’ils permettent des configurations de retrait plus flexibles que le symbole tabulation.
123123
124-
Par exemple, nous pouvons aligner les arguments avec le crochet d’ouverture, comme ceci :
124+
Par exemple, nous pouvons aligner les arguments avec la parenthèse d’ouverture, comme ceci :
125125
126126
```js no-beautify
127127
show(parameters,
@@ -164,7 +164,7 @@ Si vous êtes un programmeur JavaScript expérimenté, vous pouvez choisir un st
164164
165165
Il ne devrait pas y avoir trop de niveaux d'imbrication.
166166
167-
Par exemple, dans une boucle, c’est parfois une bonne idée d’utiliser la directive ["continue"](info:while-for#continue) pour éviter une imbrication supplémentaire.
167+
Par exemple, dans une boucle, c’est parfois une bonne idée d’utiliser la directive ["continue"](info:while-for#continue) pour éviter une imbrication supplémentaire.
168168
169169
Par exemple, au lieu d’ajouter un `if` imbriqué conditionnel comme ceci :
170170
@@ -185,7 +185,7 @@ for (let i = 0; i < 10; i++) {
185185
}
186186
```
187187
188-
Une chose similaire peut être faite avec `if/else` et `return`.
188+
Une chose similaire peut être faite avec `if`/`else` et `return`.
189189
190190
Par exemple, les deux constructions ci-dessous sont identiques.
191191
@@ -203,7 +203,7 @@ function pow(x, n) {
203203
}
204204

205205
return result;
206-
}
206+
}
207207
}
208208
```
209209
@@ -228,7 +228,7 @@ function pow(x, n) {
228228
229229
Le second est plus lisible, parce que le "cas marginal" de `n < 0` est traité tôt. Une fois la vérification effectuée, nous pouvons passer au flux de code "principal" sans avoir besoin d'imbrication supplémentaire.
230230
231-
## Placement de Fonction
231+
## Placement des fonctions
232232
233233
Si vous écrivez plusieurs fonctions "helper" (auxiliaires) et le code pour les utiliser, il existe trois façons de les placer.
234234
@@ -283,9 +283,9 @@ C’est parce qu’en lisant du code, nous voulons d’abord savoir ce qu’il f
283283
284284
## Guides de style
285285
286-
Un guide de style contient des règles générales sur "comment écrire" du code, ex: les quotes à utiliser, le nombre d'espaces pour indenter, la longueur de ligne maximale, etc. Beaucoup de petites choses.
286+
Un guide de style contient des règles générales sur "comment écrire" du code. Exemple : les quotes à utiliser, le nombre d'espaces pour indenter, la longueur de ligne maximale, etc. Beaucoup de petites choses.
287287
288-
Au total, lorsque tous les membres d'une équipe utilisent le même guide de style, le code est uniforme. Peu importe qui l’a écrit, c’est toujours le même style.
288+
Lorsque tous les membres d'une équipe utilisent le même guide de style, le code est uniforme. Peu importe qui l’a écrit, c’est toujours le même style.
289289
290290
Bien sûr, une équipe peut toujours écrire son propre guide de style, mais cela n’est généralement pas nécessaire. Il existe de nombreux guides existants à choisir.
291291
@@ -349,6 +349,6 @@ De plus, certains IDE prennent en charge le linting nativement, ce qui peut éga
349349
350350
Toutes les règles de syntaxe de ce chapitre et les guides de style visent à améliorer la lisibilité, elles sont donc toutes discutables.
351351
352-
Lorsque nous pensons à écrire du "meilleur" code, les questions que nous devrions nous poser sont les suivantes : "Qu'est-ce qui rend le code plus lisible et plus facile à comprendre ?" Et "Qu'est-ce qui peut nous aider à éviter les erreurs ?" Telles sont les principales choses à garder à l'esprit lors du choix et du débat sur les styles de code.
352+
Lorsque nous pensons à écrire du "meilleur" code, les questions que nous devrions nous poser sont les suivantes : "Qu'est-ce qui rend le code plus lisible et plus facile à comprendre ?" et "Qu'est-ce qui peut nous aider à éviter les erreurs ?". Telles sont les principales choses à garder à l'esprit lors du choix et du débat sur les styles de code.
353353
354354
Lisez les guides de style pour connaître les dernières idées à ce sujet et suivez celles que vous trouvez les meilleures.

1-js/03-code-quality/03-comments/article.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ Comme nous le savons du chapitre <info:structure>, les commentaires peuvent êtr
44

55
Nous les utilisons normalement pour décrire comment et pourquoi le code fonctionne.
66

7-
De prime abord, les commentaires peuvent sembler évidents, mais les novices en programmation les utilise souvent à tort.
7+
De prime abord, les commentaires peuvent sembler évidents, mais les novices en programmation les utilisent souvent à tort.
88

99
## Mauvais commentaires
1010

@@ -52,7 +52,7 @@ function showPrimes(n) {
5252
for (let i = 2; i < n; i++) {
5353
*!*if (!isPrime(i)) continue;*/!*
5454

55-
alert(i);
55+
alert(i);
5656
}
5757
}
5858

@@ -177,4 +177,4 @@ Les bons commentaires nous permettent de bien maintenir le code, d'y revenir apr
177177
- Qui disent "comment fonctionne le code" et "ce qu'il fait".
178178
- Ne les mettez que s’il est impossible de rendre le code aussi simple et auto-descriptif qu’il n’en nécessite pas.
179179

180-
Les commentaires sont également utilisés pour les outils de documentation automatique tels que JSDoc3: ils les lisent et génèrent des documents HTML (ou des documents dans un autre format).
180+
Les commentaires sont également utilisés pour les outils de documentation automatique tels que JSDoc3. Ils les lisent et génèrent des documents HTML (ou des documents dans un autre format).

1-js/03-code-quality/06-polyfills/article.md

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -72,7 +72,7 @@ if (!Math.trunc) { // si une telle fonction n'existe pas
7272
JavaScript est un langage très dynamique, les scripts peuvent ajouter/modifier toutes les fonctions, y compris celles intégrées.
7373
7474
Deux librairies intéressantes de polyfills sont :
75-
- [core js](https://github.com/zloirock/core-js) qui prend en charge beaucoup, permet d'inclure uniquement les fonctionnalités nécessaires.
75+
- [core js](https://github.com/zloirock/core-js) qui prend en charge beaucoup de choses et permet d'inclure uniquement les fonctionnalités nécessaires.
7676
- [polyfill.io](https://polyfill.io) est un service qui fournit un script avec des polyfills, en fonction des fonctionnalités et du navigateur de l'utilisateur.
7777
7878
@@ -89,4 +89,3 @@ De bonnes ressources qui montrent l'état actuel de la prise en charge de divers
8989
- <https://caniuse.com/> - pour les fonctions liées au navigateur.
9090
9191
P.S. Google Chrome est généralement le plus à jour avec les fonctionnalités du langage, essayez-le si une démonstration d'un tutoriel échoue. La plupart des démos de didacticiels fonctionnent avec n'importe quel navigateur moderne.
92-

1-js/03-code-quality/index.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
11
# Qualité du code
22

3-
Ce chapitre explique les pratiques de codage que nous utiliserons plus loin dans le développement.
3+
Ce chapitre explique les pratiques de codage que nous utiliserons plus loin dans le développement.

0 commit comments

Comments
 (0)