Apprendre la programmation en jouant (débutants)

L'article te plaît ?
  •  
  • 5
  •  
  •  
  •  
  •  
  •  
    5
    Partages

Vous êtes débutants ? Vous souhaitez apprendre la programmation de jeu vidéo facilement ? Voici un exercice parfait pour vous initier à la programmation en jouant à un jeu vidéo. Aucune notion n’est requise. En quelques minutes, vous aurez déjà acquis facilement les principales bases de la programmation et de l’algorithme :

  • Instructions ;
  • Fonctions ;
  • Boucles ;

En revanche, la notion de conditions n’est pas encore accessible à ce stade.

Apprendre la programmation

Sans programmation, un jeu vidéo n’est pas un jeu vidéo.

Les mécaniques de jeux, les événements et les interactions sont scriptés grâce à un langage comme le C#, le C, le Java, etc. Mais avant d’apprendre un langage, il faut OBLIGATOIREMENT passer par l’algorithme, ou l’algo pour les intimes.

Ce sont des notions très importantes que tout développeur de jeux vidéo doit connaître. Cet exercice permettra également :

  • D’apprendre à structurer les actions ;
  • Comprendre comment un programme s’exécute ;
  • Comment optimiser son programme ;

Avant de programmer, l’algorithme c’est quoi ?

Pour faire bref, l’algorithme est une méthode pour résoudre des problèmes. Une suite d’instructions et de vérifications permettront de résoudre n’importe quel problème.

Exemple de l’algorithme de la recette : Un œuf au plat.

Si l’on schématise la recette d’un œuf au plat, on obtient ceci.

Algorithme - La recette

Algorithme – La recette

Mais si l’on détaille les instructions de la recette, on remarque que plusieurs actions sont nécessaires.

Algorithme - L'œuf au plat

Algorithme – L’œuf au plat

Certes, ce sont des schémas plus ou moins détaillés, mais nous pensons tous les jours de cette manière lorsque nous devons résoudre un problème que nous rencontrons.

Smiley Face GIF - Find & Share on GIPHY

Lightbot Code Hour : apprendre la programmation en jouant

Lightbot Code HourLe jeu vidéo qui permet d’apprendre à programmer s’appelle Lightbot Code Hour (développé par Ferro Nato). Une première version Flash est sortie il y a très longtemps, mais voici une version simplifiée et remise au goût du jour. Ce jeu vidéo fait toujours figure de référence pour moi. J’initie depuis des années des dizaines d’étudiants avec. C’est une valeur sure, accessible, rapide et ultra efficace pour débuter la programmation.

Gardez cet article de côté et lancez le jeu à cette adresse, ou bien téléchargez-le gratuitement sur votre smartphone iOS ou Android. Ensuite, continuez la lecture car je vais approfondir toutes les notions importantes à connaître avec l’aide des différents niveaux de Lightbot.

Lightbot - Choix des langues

Lightbot Code Hour est traduit en Français. Comme le jeu sur navigateur est en Flash, pensez à installer ou autoriser les animations Adobe Flash sur cette page. Je vous conseille d’utiliser le navigateur Google Chrome. Si besoin vous pouvez télécharger la dernière version du Flash Player ici.

Comment jouer à Lightbot Code Hour ?

Lightbot est un jeu en 3D isométrique, dans lequel vous devez programmer un petit robot pour qu’il allume toutes les cases bleues dans chaque niveau.

Vous résoudrez une suite de puzzles qui vous obligeront à penser comme un programmeur. La difficulté est bien dosée pour les débutants. Inconsciemment, vous apprendrez très rapidement à repenser votre algorithme comme les pros !

Les instructions

Lightbot Code Hour : Les bases

Lightbot Code Hour : Les bases

Vous avez à disposition une liste d’actions simples qu’il faut disposer dans des cases :

  • Avancer tout droit ;
  • Tourner à droite ;
  • Tourner à gauche ;
  • Sauter ;
  • Lancer une fonction ;
  • Allumer la case ;

En programmation, nous appelons ça des instructions. Une instruction correspond à une ligne de code.

Ces actions contrôlent le personnage. Une fois vos instructions scriptées, un bouton « Run » permet de lancer le processus. Elles seront exécutées l’une après l’autre jusqu’à la dernière. Tout comme dans un vrai programme, ces instructions seront exécutées dans l’ordre et vous verrez très vite si votre algo fonctionne.

Lighbot Code Hour : Les instructions

Lighbot Code Hour : Les instructions

On a tendance à répéter cette phrase en programmation :

Si ça ne fait pas exactement ce qu’on veut, ce n’est pas la faute de la machine !

Lancez les niveaux « les Bases » pour commencer l’initiation.

N. B. Dans un programme, les instructions sont exécutées en quelques millisecondes. En revanche, dans Lightbot, les actions s’enchaînent très lentement afin d’avoir le temps d’observer le déroulement du processus.

Les fonctions (procédures)

Lightbot Code Hour : Les fonctions

Lightbot Code Hour : Les fonctions

Dans Lightbot, les fonctions sont appelées des procédures. Elles regroupent une succession d’instructions. Il suffit d’appeler une fois cette procédure pour lancer un processus d’actions.

Lighbot Code Hour : Les fonctions

Lighbot Code Hour : Les fonctions

La base de la programmation : éviter la redondance.

Lorsqu’on doit exécuter plusieurs fois les mêmes actions, autant les regrouper dans une seule fonction, puis l’exécuter plusieurs fois, à chaque fois que l’on en a besoin.

Exemple d’algorithme transposé dans la vie : L’ouverture de porte simple

Si l’on décortique cette action humaine anodine en algorithme. On obtient une suite d’instructions :

  1. S’approcher de la porte
  2. Lever la main à hauteur de la poignée
  3. Attraper la poignée
  4. Baisser la poignée
  5. Pousser (ou tirer) la porte

Grâce à sa mémoire, le cerveau humain va se souvenir de comment effectuer ces actions. Il va donc exécuter ces instructions les unes après les autres et ordonner aux muscles d’agir en fonction d’innombrables paramètres captés par les différents sens.

Imaginez si l’on devait décrire tout ceci à chaque fois que l’on demande à quelqu’un d’ouvrir une porte. On nous prendrait pour des fous. Il suffit de dire « Ouvre la porte » et l’être humain comprendra qu’il devra utiliser la fonction « OUVERTURE DE PORTE ».

Door GIF by Cheezburger - Find & Share on GIPHY

Lancez les niveaux « Procédures » pour découvrir cette nouvelle notion.

Il existe différentes manières de terminer un niveau. À vous d’imaginer l’algorithme le plus optimisé et le plus logique.

Les boucles

Lightbot Code Hour : Les boucles

Lightbot Code Hour : Les boucles

Les boucles permettent des répéter plusieurs fois les mêmes instructions.

Dans Lightbot, une boucle se crée en ajoutant la brique de la Procédure (PROC1) à la fin de la même procédure (PROC1). En programmation, on appelle cela de la récursivité.

De ce fait, le programme va relancer la même fonction en boucle. Tant que le programme n’a pas allumé toutes les cases, la boucle va tourner indéfiniment.

Lighbot Code Hour : Les boucles

Lighbot Code Hour : Les boucles

Lancez les niveaux « Boucles » pour découvrir cette nouvelle notion.

Ici, aucune crainte de créer une boucle infinie. Cette erreur de code est redoutée par les programmeurs, synonyme de freeze et de crash du programme.

Conclusion

Voilà ! En quelques minutes seulement, vous avez appris les principales notions de programmation (instructions, fonctions et boucles). Bien sûr, Lightbot permet seulement de survoler les notions de base. Pour devenir un programmeur, il va falloir passer à l’étape suivante : apprendre un langage de programmation et l’appliquer aux jeux vidéo.

Si vous voulez connaître davantage d’astuces pour apprendre facilement la programmation de jeux vidéo, n’hésitez pas à en parler dans les commentaires.

Avez-vous facilement résolu tous les niveaux ?

Alors vous êtes prêt pour continuer l’aventure Lightbot sur des niveaux bien plus difficiles ? La version Flash de 2008 est toujours disponible sur kongregate.com.

Plus d’informations sur lightbot.com


L'article te plaît ?
  •  
  • 5
  •  
  •  
  •  
  •  
  •  
    5
    Partages

Vous aimerez aussi...

Laisser un commentaire

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.