Étape 1: Notions fondamentales de programmation
Trois caractéristiques fondamentales de programmation ont été illustrés dans notre vidéo : tableaux, encapsulation et informations complémentaires sur les variables. Les tableaux sont utilisés pour simplifier les variables utilisées pour chaque joueur. Au lieu de générer des variables uniques pour LED à allumer, appuyez sur le bouton et bouton debouncing, une seule variable a été utilisée pour chaque contenant un tableau de "2", un pour chaque joueur. Cela fait aussi encapsulation et code répétitif utiliser beaucoup plus simplifié. Si le code doit être réaffecté au programme plus d’une fois, il est logique de mettre ce code dans le lieu spécial appelé une fonction (méthode) donc il peut être étiqueté chaque fois que cela est nécessaire. Puisqu’il y avait deux joueurs, nous avons utilisé un code identique qui était à l’origine va être utilisé à deux reprises lors l’Appuyez sur le bouton et le rejet est effectué et le code qui sert à allumer les LEDs.
Plus précisément, dans le programme, vous pourrez voir quelques nouveautés. Avec la création de nouvelles fonctions, nous pouvons créer essentiellement ce qui ressemble à nouvelles commandes que le programme sera undestand. Ces fonctions sont appelées ProcessPressedButton et ProcessReleasedbutton. Avec l’aide des tableaux, tout ce qu’il faut faire est de la baie (joueur numéro) soit transmis dans ces fonctions. Au programme, la première chose que vous remarquerez est qu’il y a un couple de déclarations avec « vide » au début. Ce sont les prototypes de fonction. La langue de C ou C++ requiert ces prototypes de fonction d’informer le compilateur que ceux-ci sont utilisés dans le programme avant qu’elles sont en fait définies. Notez que les fonctions sont utilisées dans le programme (au sein de la fonction principale) avant le code et les fonctions réelles (après la fonction principale). Une alternative à cela serait effectivement mettre la fonction principale à la fin du programme, et supprimer les prototypes, mais personnellement, j’aime garder la fonction principale au début pour plus de clarté. Il y a même une meilleure solution : créer deux fichiers de bibliothèque qui contiennent ces nouvelles fonctions, mais nous n’avons pas appris à ce niveau d’émissions, mais à ce point dans la série de didacticiels.
Vous remarquerez également qu’il existe des entiers (variables) à l’extérieur de la fonction principale (ignorer les supports et le numéro 2 pour l’instant). Cela va forcer ces variables ont une portée globale. Champ d’application est où les variables déclarées seront utilisées. Si une variable est déclarée dans un bloc de code spécifique, comme dans une fonction, alors la variable va vivre et mourir dans ce bloc de code et des blocs de code dans le bloc. Par exemple, si les variables sont déclarées dans la fonction principale, ces variables ne peut pas être utilisés dans une autre fonction qui réside à l’extérieur de la fonction principale. Si ces variables sont définies dans la partie inférieure plus niveau (en dehors de tout bloc), ils deviennent globales, et peut utiliser n’importe quel bloc de code.
Maintenant les tableaux... Remarquez le [2] à la fin des variables globales. Ceci permet à deux de ces mêmes variables à être créé et différenciés à l’aide d’un [0] ou [1]. Pourquoi « 0 » ? Les numéros sont indexés de 0, pas de 1. Alors, prenez la Pressed [2] à titre d’exemple. Cela crée une variable appelée Pressed [0] et un Pressed [1]. Notez que dans les fonctions que j’ai une variable entre les crochets. Encapsulation et tableaux peuvent fournir des fonctionnalités vraiment intéressantes dans la programmation.