Utiliser un agent IA pour explorer une technologie que vous ne connaissez pas : ici Rust et le framework de jeux vidéo Bevy.
Ce n’est pas un TP sur la veille IA - le cours (11_cours_veille.md) couvre déjà les sources (HN/Lobste.rs LLM tags, LocalLLM).
C’est un TP sur le travail avec un agent sur un domaine inconnu.
Un des grands pouvoirs des agents LLM : vous guider dans une technologie que vous ne maîtrisez pas.
Scénario : Vous êtes développeur Python/JS, vous n’avez jamais fait de Rust. Mais vous voulez créer un petit jeu.
L’agent peut :
Prompt initial :
I want to build a simple game demo in Rust using the Bevy game engine.
I have never used Rust or Bevy before.
1. What do I need to install?
2. What's a simple first demo I could build in 2-3 hours?
3. What are common gotchas for beginners?
Give me 3 demo ideas ranked by difficulty.
L’agent va suggérer :
Demander à l’agent de générer les commandes :
Give me the exact commands to:
1. Install Rust on my system (Linux/macOS)
2. Create a new Bevy project
3. Run a minimal window
Notez chaque commande dans votre historique.
Gardez le Git workflow actif - voir section transversale.
Exemple de réponse agent :
## Demo Ideas (ranked by difficulty)
1. **Hello Window** (30 min)
- Just opens a window
- Teaches: Cargo, dependencies, Bevy App structure
2. **Moving Sprite** (2h)
- A sprite that moves with keyboard
- Teaches: Systems, Query, Components, Input handling
3. **Simple Pong** (3-4h)
- Two paddles, a ball, collision
- Teaches: ECS architecture, collision detection, game loops
Choisir le niveau adapté à votre temps disponible.
Pattern de travail :
YOU: "I chose the moving sprite demo. Let's start."
AGENT: Explains the structure, provides base code
YOU: Copy-paste into your editor
ERROR: Compiler error appears
YOU: Paste error to agent
AGENT: Explains the error, suggests fix
YOU: Apply fix, test again
[Loop until working]
Important : Vous ne copiez pas aveuglément. Vous comprenez chaque ligne.
# RUST_BEVY_LEARNING.md
## Date: DD/MM/YYYY
## Why Rust + Bevy?
[Ce qui vous a motivé]
## Demo Chosen
[Hello Window / Moving Sprite / Pong]
## Installation Log
```bash
# Commandes exécutées
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
cargo new my_bevy_game
cd my_bevy_game
# ... toutes les commandes ...
[Error message exact]
Cause: [Explication agent] Fix: [Solution appliquée]
**Ce fichier devient votre mémoire de session.**
**Utile pour vous ET pour l'équipe.**
---
# Partie 4 : Le check agent
## Critiquer le résultat
**Questions à poser à la fin :**
**L'agent peut vous surprendre :**
- Code qui fonctionne mais pas idiomatique
- Patterns simplistes qui passent à l'échelle
- Dette technique invisible
---
# Git & Docker Workflow (Transversal)
> **⚠️ Voir `00_workflow_transversal.md` pour le workflow complet.**
**Rappels rapides pour ce TP :**
```bash
# Git : Une branche par feature
git checkout -b feature/bevy-demo
git add src/main.rs && git commit -m "feat: add basic Bevy window"
# Docker : Isolation optionnelle pour Rust/Bevy
docker run -it -v $(pwd):/app rust:latest bash
cargo new my_bevy_game
Pourquoi c’est important : En unknown tech, Git est votre safety net. Si l’agent suggère du code qui casse tout, vous pouvez git diff ou git revert.
⚠️ Voir
00_workflow_transversal.mdpour les détails complets sur Yolo Mode et Catastrophic Forgetting.
Rappel rapide : Le “yolo mode” (laisser l’agent faire tout seul) est risqué. En unknown tech, c’est encore plus dangereux car vous ne savez pas si le code généré est correct.
Pattern recommandé :
BAD: "Just create the game for me."
GOOD: "Explain the code structure first."
[Ask clarifying questions]
[Request one function at a time]
À la fin de ce TP :
RUST_BEVY_LEARNING.md documentéPattern retenu : L’agent est un guide, pas un développeur remplaçant.
Question clé : Si l’agent a écrit du code que vous ne comprenez pas, comment allez-vous le maintenir ?
Prochain module : Module 12 - Projet final avec intégration complète du Git workflow.