top of page

Projet important : CalculApp

Durant 3 mois, nous allons travailler sur notre gros projet qui est unique à chaque personne.

Pour ma part, j'ai choisi de faire un jeu éducatif qui permet de faire des additions, des soustractions, des multiplications et des divisions.

Je vais utiliser une librairie de Python "CustomTkinter" pour le coder

Accéder au code source

Séance 1 : 26/01/2023 :

Aujourd'hui, j'ai commencé à réfléchir sur le contenu de mon projet. J'ai décidé, en accord avec le professeur, de faire un jeu éducatif. Je me suis alors poser beaucoup de questions sur la démarche à adapter pour faire ce projet :

Comment avoir un interface jolie ? Les différentes fonctionnalités du projet ? La difficulté des opérations ? Et tant d'autres questions... Pour y répondre à toutes, je vais me faire un cahier des charges et une maquette graphique "fonctionnelle" pour savoir quel est mon but final dans ce projet.

Séance 2 : 30/01/2023 :

Aujourd'hui, j'ai commencé à développer ma page d'accueil de l'application. Je vais faire un système d'identification pour pouvoir garder les meilleurs scores de l'élève. Je fais face à plusieurs problèmes actuellement : je ne sais pas comment faire un zone de texte pour pouvoir entrer les identifiants, je ne sais pas comment faire des boutons (même si cela à l'air plutôt simple). J'ai réussi à voir comment changer de scène que je clique sur un "bouton", je vais utiliser des states, chaque state va correspondre à une "page" de mon application pour pouvoir naviguer dedans.

Séance 3 : 31/01/2023 :

Aujourd'hui, j'ai continué à faire ma page d'accueil. J'ai recherché durant une bonne partie de la séance le moyen de créer une zone de texte afin de récupérer l'identifiant et le mot de passe de l'utilisateur. Je pense avoir trouvé une solution, j'ai importé une librairie de la bibliothèque de Processing et je vais voir comment cela fonctionne. J'ai également mis une police d'écriture personnalisé afin de correspondre avec un jeu fait pour les "enfants".

Séance 4 : 02/02/2023 :

Aujourd'hui, j'ai poursuivit ma page d'accueil. Je me confronte toujours à beaucoup de problème. J'ai essayer de mettre en œuvre une bibliothèque appartenant à Processing pour afficher des zones de textes et des boutons mais aucune ne marche, c'est un problème de Processing qui ne peut plus prendre en compte les bibliothèques pour le langage Python. Je cherche donc activement une solution.

Capture d'écran 2023-05-24 141658.png

Etat du projet sous Processing 4

Séance Vacances : 06/02/2023 au 19/02/2023 :

Pendant les vacances, j'ai un peu travaillé sur mon projet. J'ai tout recommencer ! J'avais de très gros problème avec Processing, le principal était que aucune librairie ne marchait avec Python. J'ai donc fait des recherches pour voir comment remplacer Processing, et je suis tombé sur une librairie de Python "CustomTkinter" : cette librairie marche comme Tkinter mais rend les applications beaucoup plus joli. Je suis donc parti sur cette solution me disant que cela serai plus simple. Et effectivement, c'est plus simple, je me suis confronté à un gros problème qui était de savoir comment changer de pages sur mon application. J'ai fais beaucoup de recherches et il n'y avait qu'une solution : utiliser des classes. Cela me permet de faire des instances des mes pages et de les appeler quand j'en ai besoin, également, cela me permet de réduire la taille de mon fichier principal. Grace à cela j'ai pu faire la page de connexion et d'inscription. Je suis en train de faire le système d'authentification, qui va mettre le nom d'utilisateur, le mot de passe et l'age dans un fichier csv. Je suis confronté à quelques problèmes pour l'écriture du fichier csv, mais je pense régler ceci très rapidement. Les prochaines étapes sont importantes : 1) finir le système d'authentification dont la création d'un composant graphique qui n'existe pas sur la librairie 2) la page principale 3) le système de mon jeu, le point le plus compliqué sera de faire le système des boutons. Je verrai comment faire sur le moment.

Séance 5 : 20/02/2023 :

Aujourd'hui, j'ai fini de faire la page d'inscription pour mon jeu, j'ai réussi à entrer les données entrées par l'utilisateur dans un fichier csv. Il faut désormais que je m'occupe de la page de connexion.

Séance 6 : 21/02/2023 :
Capture d'écran 2023-05-24 142455.png

Aujourd'hui, j'ai pratiquement fini mon système d'authentification, la connexion et l'inscription fonctionne. Un seul problème peut arriver, si on rentre le même nom d'utilisateur et le même mot de passe, il va y avoir 2 fois la même personne. Cela peut être simple à modifier. J'ai également rajouter un widget à ma librairie me permettant de rendre jolie des messages box, je mets mes messages d'erreur dedans. Après avoir régler ce dernier petit soucis à l'inscription, je pourrais passer à la page d'accueil du jeu.

Séance 7 : 23/02/2023 :

Aujourd'hui, j'ai fini mon système d'authentification. J'ai commencé à faire la page d'accueil où l'utilisateur va choisir l'opération qu'il veut travailler et le niveau choisi. Je suis confronté à un problème où je ne sais pas comment faire pour récupérer le joueur qui vient de se connecter. Je dois encore terminer cette page avant de commencer à travailler sur le système de jeu.

Séance 8 : 27/02/2023 :
Capture d'écran 2023-05-24 142638.png

Aujourd'hui, j'ai commencé à faire mon système de jeu. J'ai fini la page qui permet de choisir quelles opérations à effectuer. J'ai ajouté un chronomètre sur mes pages de jeu.

Séance 9 à 13 : du 28/02/2023 au 09/03/2023 :

Durant ces séances, j'ai bien avancé le système du jeu. J'ai réussi à faire les 2 niveaux pour les calculs d'opération. J'ai fais affaire à quelques problèmes, comme des problèmes de conditions de réussite ou de défaite mais j'ai réussi à faire ce qu'il fallait pour identifier ces problèmes et les régler. J'ai également rajouter un "logo" sur chaque page, réalisée grâce à Canva.

Capture d'écran 2023-05-24 143018.png
Séance Bonus : 01/04/2023 et 02/04/2023 :
Capture d'écran 2023-05-24 143346.png

Durant ce week-end, ma mission était de régler les derniers problèmes qu'il y avait encore sur l'addition de niveau 2, ce qui est chose faite. J'ai également fait la multiplication de niveau 1, qui est seulement des multiplications des tables de multiplications de 0 à 9. J'ai également commencé à réfléchir sur la multiplication de niveau 2.

Séances Finales : du 03/04/2023 au 06/04/2023 :

Durant ce dernier temps qu'il me restait, j'ai réussi à terminer la multiplication de niveau 2 sans trop de difficulté. J'ai régler les derniers petits détails et problèmes qu'il restait par ci et par là et j'ai terminé ma trame pour ne rien oublier lors de mon passage à l'oral qui s'est très bien déroulé !

bottom of page