Évaluer le code généré
L'IA écrit vite. Toi, tu lis bien.
6.1Les 5 niveaux de review
Niveau 1 : Syntaxe & compilation
Est-ce que ça compile ? Est-ce que ça tourne sans erreur ?
Le minimum. Si ça plante, c'est évident. Mais valider ici ne suffit pas.
Niveau 2 : Logique fonctionnelle
Est-ce que ça fait ce que je veux ? Tous les cas sont couverts ?
Teste les cas limites : chaîne vide, tableau vide, utilisateur non connecté, erreur réseau.
Niveau 3 : Sécurité
XSS, injection SQL, exposition de données sensibles ?
L'IA oublie souvent la validation côté serveur, le sanitize des inputs, les headers de sécurité.
Niveau 4 : Performance
Pas de re-renders inutiles ? Requêtes optimisées ?
Vérifie les useEffect sans deps, les map/filter chaînés, les imports de librairies entières.
Niveau 5 : Architecture & maintenabilité
Le code s'intègre bien dans ton projet ? Facile à faire évoluer ?
Le code respecte-t-il tes patterns ? Est-il découplé ? Testable ? Documented ?
6.2Les hallucinations courantes
L'IA ne "ment" pas intentionnellement. Elle hallucine, elle génère du texte qui a l'air correct mais qui est faux. En code, ça prend des formes spécifiques :
APIs fantômes
L'IA utilise des fonctions ou méthodes qui n'existent pas dans la librairie.
array.toSorted() // Existe en ES2023
response.json().data // Structure inventée
next/router (App Router = next/navigation!)
Versions obsolètes
L'IA utilise des patterns d'une ancienne version du framework.
getServerSideProps // Next.js pages/ router
componentDidMount // React classes
@tailwind base; // Tailwind v3 syntax
Packages imaginaires
L'IA importe des packages qui n'existent pas sur npm.
import { useAuth } from 'next-auth/hooks'
import { cn } from 'tailwind-merge' // Presque !
npm install @next/analytics // N'existe pas
Logique magique
Le code a l'air correct mais la logique est erronée.
if (user.role === 'admin' || 'editor')
// ↑ Toujours true ! Le || évalue 'editor'
// Correct : user.role === 'admin' || user.role === 'editor'
6.3La checklist de review rapide
À utiliser pour chaque code généré
🔍 Avant d'intégrer
🛡️ Validations
6.4Utiliser l'IA pour review l'IA
Technique puissante : demande à un deuxième modèle (ou au même modèle dans une nouvelle conversation) de reviewer le code généré.
# Prompt de review efficace :
"Voici un composant React généré par IA.
Fais une code review en vérifiant :
1. La logique fonctionnelle (cas limites)
2. La sécurité (XSS, injections, exposition de données)
3. Les bonnes pratiques React (hooks rules, re-renders)
4. La compatibilité avec Next.js 15 App Router
5. Les imports : vérifie que chaque package/fonction existe vraiment
[colle le code ici]"6.5Exercice : spotte les erreurs
À toi de jouer
La prochaine fois que l'IA te génère du code, applique la checklist de review et note :
- Combien de lignes as-tu modifiées après review ?
- As-tu trouvé un import inexistant ?
- As-tu trouvé une API de mauvaise version ?
- L'IA a-t-elle ignoré un cas limite que tu as vu ?
- Le code était-il sécurisé par défaut ?
Avec l'habitude, cette review deviendra un réflexe automatique en quelques secondes.