Space Invaders
1 mois UBO - UFR Sciences et Techniques, Brest 29200

Recréation du classique Space Invaders en Python orienté objet avec Tkinter. Ce projet m'a permis de redécouvrir les bases de la programmation orientée objet et de mettre en pratique mes compétences.
Principes POO Appliqués
Encapsulation
- Classes distinctes pour chaque entité
- Attributs privés et méthodes publiques
- Interfaces claires entre composants
Héritage
- Classe de base pour entités du jeu
- Spécialisation pour joueur, ennemis, projectiles
Polymorphisme
- Comportements spécifiques par type d'entité
- Système de collision unifié
Architecture du Jeu
Game Engine
- Game Loop robuste avec gestion des FPS
- State Management pour phases de jeu
- Détection de collisions optimisée
Entités
- Joueur avec contrôles clavier
- Ennemis avec patterns de mouvement
- Projectiles avec trajectoires
- Boss et power-ups
Fonctionnalités
- Event handling pour contrôles
- Système de scoring persistant
- Niveaux de difficulté progressifs
- Menu et écran de game over
Rendu Graphique
- Utilisation avancée de Tkinter Canvas
- Animations fluides
- Rendering optimisé
- Sprites personnalisés
Design Patterns
- Observer Pattern pour gestion d'événements
- Factory Pattern pour création d'entités
- State Pattern pour états du jeu
Ce projet démontre ma compréhension de la POO en Python et du développement de jeux.