Bienvenue dans cette première leçon, dans laquelle nous allons parler de la manière d’aborder un problème informatique, et des étapes nécessaires que vous devez suivre pour le résoudre.
Les trois étapes
Face à un problème informatique complexe, il est parfois tentant de commencer à programmer immédiatement.
Alors que beaucoup d’étudiants peuvent avoir l’impression de ne pas avancer s’ils n’écrivent pas des lignes et des lignes de code, ce n’est tout simplement pas vrai.
Si vous vouliez construire une maison, commenceriez-vous à empiler des briques tout de suite ? Je ne pense pas.
Ainsi, chaque fois que vous êtes confronté à un problème informatique, trois étapes consécutives doivent être suivies :
- Formaliser.
- Spécifier.
- Coder.
Formaliser signifie « exprimer un problème en utilisant une terminologie et des concepts adaptés ».

Dans ce cours, nous allons programmer une IA pour jouer à un jeu dans un labyrinthe.
La première étape sera donc de comprendre comment représenter et manipuler les labyrinthes.

Pour cela, nous nous référerons à la théorie des graphes, qui est un cadre mathématique courant nous aidant à formaliser de nombreux problèmes.
Les programmeurs qui négligent cette étape de formalisation risquent de rencontrer des problèmes inattendus.
Dans les cas simples, cela pourrait simplement retarder leur travail.
Mais dans des cas plus graves, cela pourrait signifier que tout le travail produit jusqu’à présent est inutile, et qu’ils doivent recommencer depuis le début.
Spécifier
Une fois qu’un problème a été correctement formalisé, il est temps de spécifier une solution.

Spécifier signifie « identifier des algorithmes ou méthodes bien adaptés pour résoudre le problème formalisé ».

Par exemple, dans ce cours, l’IA que vous allez implémenter devra se déplacer dans le labyrinthe.
Nous discuterons donc des méthodes pour trouver un chemin le plus court dans un graphe.
Des méthodes comme celles-ci peuvent être utilisées pour identifier une solution.
La spécification est d’une importance capitale, et nous permet de faire les bons choix en tenant compte du problème à résoudre.
La spécification révèle aussi la structure globale de la solution, ce qui facilite le travail en équipe, car chaque individu sait exactement ce qu’il doit faire.
Coder
Enfin, une fois le problème spécifié, il est temps de commencer à coder.
Coder doit toujours être la dernière étape dans la résolution d’un problème informatique.

Coder devrait être assez simple si les étapes de formalisation et de spécification ont été correctement réalisées, et devrait s’enchaîner naturellement après l’étape de spécification.
Mots de conclusion
Cela conclut la leçon d’aujourd’hui. Vous avez appris qu’en développement, il est préférable de ne pas commencer à coder tout de suite, mais d’abord de réfléchir un peu à la formalisation du problème, et à la spécification d’une solution.
Dans la prochaine vidéo, vous apprendrez la théorie des graphes.
À bientôt !