XII. Bien coder▲
L'utilisation d'un langage de programmation passe par l'apprentissage d'un vocabulaire et d'une syntaxe précise. Dans ce chapitre, nous aborderons quelques unes de ces règles ainsi que d'autres éléments à prendre en considération dans l'écriture d'un programme Arduino. Si quelqu'un doit lire ou modifier votre code, vous pouvez lui faciliter la tâche en attachant une attention particulière à sa structure et en y apposant des commentaires qui expliquent votre logique. Bref, un code clair offre une meilleure lecture, qu'il s'agisse de modifier ses configurations pour l'adapter à votre besoin ou de localiser la source d'une erreur.
XII-A. Conventions de nommage▲
La syntaxe d'un langage de programmation se base généralement sur une « convention de nommage(16) ». Il est important de respecter cette nomenclature pour rester dans l'esthétique du code.
Dans la déclaration des variables, il faut écrire les constantes en majuscules :
const
int
CAPTEUR =
A0; // CAPTEUR est une constante.
Pour les autres variables (int, char, etc.), les fonctions et les sous-routines seront en minuscule. Dans le cas où ces variables ont des noms composés, le premier mot est en minuscule et les autres commencent par une majuscule. Par exemple :
int
bookSprint =
2011
;
Pour les sous-routines (voir explication plus bas), la règle est identique à celle des variables composées. Par exemple :
afficherValeurCapteur ();
Attention à ne pas omettre le point-virgule à la fin des instructions.
XII-B. Déclarer ses variables▲
Le nom des éléments (capteurs, actionneurs, etc.) utilisés dans un projet sont généralement repris par les variables du programme qui fait fonctionner le dispositif. Cette pratique permet de clarifier la fonction des différentes variables. Par exemple, pour choisir une variable qui a pour fonction de définir le port sur lequel est connectée une LED, nous choisirons la variable suivante :
int
brocheLed =
13
;
XII-C. Indenter son code▲
Il est conseillé d'effectuer un retrait par rapport à la ligne précédente à chaque nouveau bloc d'instructions. Les blocs d'instructions inscrits dans les fonctions et boucles sont délimités par des accolades, l'une est ouvrante et l'autre fermante.
2.
3.
4.
if
(etatCaptation ==
1
) {
if
(valeurCapteur >=
seuil) {
analogWrite (pinLed, HIGH);}
}
Le code ci-dessus n'est pas indenté. Après indentation, nous obtenons ceci :
2.
3.
4.
5.
if
(etatCaptation ==
1
) {
if
(valeurCapteur >=
seuil) {
analogWrite (pinLed, HIGH);
}
}
Il est à noter qu'un code indenté est plus attrayant et lisible. C'est un aspect qui facilite la recherche d'erreurs éventuelles qui pourraient se glisser dans le code.
XII-D. Faire des commentaires▲
Il n'y a rien de plus embêtant qu'une instruction écrite dans un code et dont on a oublie l'utilité quelques jours après. Les commentaires permettent de se retrouver dans son code. Ils facilitent en outre la compréhension du code pour ceux qui en auront éventuellement besoin.
Ci-dessous, un commentaire sur plusieurs lignes explique le fonctionnement du programme.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
/*TEXTE BRILLANT
Ce programme permet de piloter les LED à partir de certaines touches du clavier.
Principe:
Saisir les caractères dans le moniteur sériel de l'interface de programmation Arduino pour allumer et éteindre les LED.
Saisir 'R' pour allumer la LED rouge,
Saisir 'J' pour allumer la LED jaune,
Saisir 'V' pour allumer la LED verte,
Saisir 'B' pour allumer la LED bleue,
Saisir 'E' pour éteindre les LED.
*/
Ci-dessous, une instruction suivie d'un commentaire explique l'instruction.
digitalWrite(pinLed0, HIGH); // Allumer la LED connectée à pinLed0
XII-E. Les sous-routines ou fonctions▲
Quand votre code commence à tenir une place importante et que vous utilisez à plusieurs reprises les mêmes blocs d'instructions, vous pouvez utiliser une sous-routine qui vous permet de mieux organiser et d'alléger votre programme Les sous-routines doivent être écrites après la boucle principale.
XII-F. Vérifier son code▲
Les erreurs dans un code sont parfois subtiles à retrouver. Il est donc conseillé de compiler régulièrement son code avec le bouton « Verify » ; les erreurs éventuelles apparaissent dans la console.
XII-G. Bonus▲
Pour indenter votre code vous pouvez utiliser la fonction « autoformat ». Cette fonction se base sur les conventions de programmation pour formater le code. Elle indente votre code automatiquement. Pour cela il faut aller dans le menu Tools > Auto Format ou utiliser le raccourci correspondant.