Travaillé du 2016-03-15 au 2019-05-25

🏷 Mots clés

🚦 Status

Terminé

Cinq jeux réalisés avec JavaFX vers la fin du secondaire et vers le début de l’université. Java étant le premier langage de programmation que j’ai appris, j’ai utilisé Java, et plus particulièrement JavaFX , pour créer plusieurs jeux.

Les trois premiers ont été créés pour un cours de programmation au secondaire, où l’on nous posait diverses questions de programmation et où nous devions également créer des projets. Quant aux deux derniers, je les ai surtout créés par ennui et pour appliquer les nouveaux concepts de programmation que j’ai appris à l’université. De plus, ces jeux ont été créés lorsque je ne maîtrisais pas le CSS, d’où provient le design incohérent.

Tic-Tac-Toe

GitHub Repo @BenJeau/JavaFX-TicTacToe

C’était mon tout premier jeu et j’étais intrigué par la façon dont je pouvais incorporer des mécanismes multijoueurs, localement et sur le réseau local. La dernière partie était un peu trop ambitieuse, mais je me souviens avoir réussi à la faire fonctionner. En regardant le code, c’est sans doute l’un des pires jeux que j’ai fait. Chaque mouvement était codé avec de “belles” déclarations if-else-if. Même si c’est le cas, cela ne me dérange pas que le code soit disponible puisqu’il démontre l’évolution de mes compétences en programmation.

Capture d'écran du jeu Tic-Tac-Toe

J’ai créé ce jeu vers la fin de l’année scolaire de 2016.

Il y a aussi le choix de jouer contre l’ordinateur, la difficulté de l’ordinateur était la suivante :

  • * Facile : toujours effectuer des mouvements aléatoires
  • * Moyen : faire soit un mouvement aléatoire, soit un mouvement intelligent (selon l’algorithme expert)
  • * Expert : toujours faire des mouvements intelligents (où l’ordinateur gagnera toujours ou sera à égalité avec vous)
Capture d'écran du menu
Capture d'écran de la fenêtre de difficulté
Capture d'écran de la fenêtre du multijoueur local

Simon Says

GitHub Repo @BenJeau/JavaFX-SimonSays

Créé peu après, celui-ci était bien plus simple. Je voulais simplement créer un jeu similaire au jeu classique Simon Says. Le jeu était plus simple que le jeu de morpion, mais j’en étais tout de même fier car il m’a pris moins de temps à créer.

Capture d'écran de Simon Says

Poker

GitHub Repo @BenJeau/JavaFX-Poker

Pour mon projet final du cours de programmation de dernière année au secondaire, je voulais créer un jeu plus complexe que les précédents. Je me suis décidé à créer un jeu de poker, où vous pouvez jouer contre l’ordinateur ou contre un autre joueur.

Capture d'écran de la fenêtre initiale
Capture d'écran de l'entrée du nom

Ce fut également la première fois que je créais une application multilingue, bien que l’implémentation soit assez naïve (sans changement de langue lors de l’exécution). J’ai décidé de créer un jeu de poker puisque les règles sont plus complexes que le Tic-Tac-Toe ou Simon Says.

Capture d'écran du jeu

Tetris

Github Repo @BenJeau/JavaFX-Tetris

Les deux jeux suivants ont été créés pendant les périodes d’examens à l’université, lorsque je n’avais pas envie d’étudier ou que je procrastinais sur mes devoirs. Il s’agissait d’une façon d’appliquer mes compétences en programmation nouvellement acquises d’une manière intéressante.

C’était aussi la première fois que j’essayais de séparer les aspects de l’application en répartissant le code dans des classes connexes. J’ai tenté de créer un jeu semblable à Tetris au secondaire, mais c’était un désordre complet et je ne savais pas comment structurer correctement le code.

Capture d'écran du jeu

Sudoku

GitHub Repo @BenJeau/JavaFX-Sudoku

Le dernier jeu que j’ai créé avec JavaFX était un jeu de Sudoku. Ce jeu simple était un peu plus compliqué que prévu à cause de la génération du plateau. J’utilisais la récursion et le backtracking pour générer le plateau, mais comme je n’avais jamais vu le concept de backtracking auparavant, j’ai eu des problèmes avec son implémentation.

Capture d'écran du jeu

Malheureusement, comme je n’ai pas complètement terminé la partie de backtracking, la planche générée n’est pas toujours réalisable. Le code permettant de générer un tableau complet était fonctionnel, mais la suppression de certains chiffres pour créer un tableau jouable ne l’était pas (la deuxième partie du backtracking).

🛠 Technologies

Langues

Cadriciels