Plus sur moi

Projets

KNN

Pendant le cours Données, mégadonnées et intelligence artificielle , nous avons développé une application de classification d'images, combinant expertise technique et valeur éducative. Nous avons utilisé Python, Qt, NumPy, psycopg2, et Matplotlib, avec PostgreSQL pour la base de données. Notre objectif principal était de mettre en place l'algorithme des k plus proches voisins (KNN) pour la classification d'images, d'intégrer cette fonctionnalité dans une application complète, et d'assurer une connexion fluide à la base de données.


TowerDefence

Pendant le cours de Génie Logiciel II : Conception et Gestion, nous avons développé un jeu de défense de tour classique en utilisant Python, en intégrant le framework tkinter pour l'interface utilisateur graphique (GUI) et Flask pour le composant côté serveur. Le jeu permet aux joueurs de s'engager dans un gameplay de défense de tour soit localement, en jouant seul, soit avec une autre personne via le serveur en utilisant une adresse API. Dans le cadre du framework tkinter, des éléments essentiels tels que des boutons, des étiquettes et des éléments de canevas ont été utilisés pour construire l'interface du jeu. Flask a été utilisé pour établir le serveur, gérer la communication client-serveur et permettre la fonctionnalité multijoueur via une API. Les joueurs peuvent interagir avec l'interface du jeu pour placer stratégiquement des tours, gérer des ressources et repousser des vagues d'ennemis. Le serveur facilite le gameplay multijoueur en synchronisant les états de jeu entre les joueurs, en gérant les appariements et en traitant les événements de jeu via l'API. De plus, le projet intègre des fonctionnalités de défi pour améliorer l'engagement et la progression des joueurs. Ces défis offrent des objectifs spécifiques, tels que vaincre un certain nombre d'ennemis dans le jeu, avec la progression et les récompenses gérées dans une base de données SQLite3. Au fur et à mesure que les joueurs relèvent des défis, ils débloquent des récompenses telles que de la monnaie en jeu, des améliorations ou de nouveaux contenus de jeu, avec des défis supplémentaires débloqués progressivement à mesure que les joueurs atteignent des jalons ou terminent des défis existants. Tout au long du projet, des principes et des méthodologies de génie logiciel ont été appliqués, avec les membres de l'équipe collaborant sur divers aspects, notamment les mécanismes de jeu, la conception de l'interface utilisateur, la mise en œuvre côté serveur et la gestion de base de données. L'accent a été mis sur la qualité logicielle, la maintenabilité et le respect des délais du projet, avec des réunions régulières, un contrôle de version et des outils de collaboration utilisés pour assurer une communication et une coordination efficaces entre les membres de l'équipe. Le jeu de défense de tour résultant a mis en valeur les efforts collectifs de l'équipe et a démontré leur maîtrise des concepts et des pratiques de génie logiciel.


Contactez-Moi