Section 11.3.12 : AI Coding Assistants — Copilot et Cursor
🎯 Objectif pédagogique
Maîtriser les assistants de code IA (GitHub Copilot, Cursor, Codeium) pour accélérer votre développement. Vous serez capable d'utiliser l'autocomplétion IA, le chat contextuel, et les techniques de prompt pour coder 2-3x plus vite.
Les assistants IA changent le métier
Depuis qu'il code, Marc écrit chaque ligne lui-même. Mais en 2025, les développeurs les plus productifs utilisent des AI coding assistants : des outils qui suggèrent du code, corrigent les bugs, et génèrent des fonctions complètes à partir de descriptions en langage naturel.
GitHub Copilot
Le plus populaire, intégré dans VS Code et JetBrains.
# 1. Autocomplétion — Commencez à écrire, Copilot suggère
def calculate_monthly_applications(
# Copilot génère la suite basée sur le contexte :
applications: list[dict],
start_date: str,
end_date: str
) -> dict:
"""Calculate application statistics per month."""
from collections import defaultdict
from datetime import datetime
monthly = defaultdict(int)
for app in applications:
date = datetime.strptime(app['date'], '%Y-%m-%d')
key = date.strftime('%Y-%m')
monthly[key] += 1
return dict(monthly)
# 2. Commentaire → Code — Décrivez ce que vous voulez
# Fonction qui scrape les offres d'emploi de Indeed France
# pour le mot-clé "data analyst" à Paris
# et retourne une liste de dictionnaires \{title, company, salary, url\}
def scrape_indeed_jobs():
# Copilot génère le code complet...
pass
# 3. Chat — Posez des questions dans le panneau
# "Explique ce code"
# "Refactorise cette fonction avec des type hints"
# "Écris des tests unitaires pour calculate_monthly_applications"
Cursor — L'IDE IA-native
Cursor est un fork de VS Code conçu entièrement autour de l'IA :
Fonctionnalités clés :
─────────────────────
1. Cmd+K (Ctrl+K) → Écrire/modifier du code en langage naturel
"Ajoute un try/except avec logging autour de cette requête API"
2. Cmd+L (Ctrl+L) → Chat avec contexte du fichier
"Explique pourquoi cette fonction retourne None"
3. @ mentions → Ajouter du contexte
@file.py "Utilise le même pattern que dans file.py"
@docs "Suis la documentation de l'API"
@web "Cherche comment faire X"
4. Multi-file editing → Modifier plusieurs fichiers
"Ajoute une gestion d'erreurs dans tous les fichiers du dossier api/"
5. .cursorrules → Règles de code personnalisées
"Toujours utiliser des type hints Python"
"Préférer les f-strings aux .format()"
"Nommer les variables en snake_case"
Techniques pour des suggestions IA efficaces
# ❌ Mauvais : pas de contexte → suggestions génériques
def process():
pass
# ✅ Bon : docstring descriptive → suggestions précises
def process_job_application(
application: dict,
action: str = "submit"
) -> bool:
"""
Process a job application through the pipeline.
Steps:
1. Validate all required fields (company, position, date)
2. Check for duplicates in the database
3. Format the cover letter with the template
4. Submit via API or save as draft
Returns True if successfully processed.
"""
# Copilot a maintenant tout le contexte pour générer le code
pass
# ✅ Encore mieux : exemples dans les commentaires
# Example input: \{"company": "Google", "position": "Data Analyst", "salary": 65000\}
# Example output: \{"status": "submitted", "ref": "GA-2025-0042"\}
Comparaison des AI Coding Assistants
| Outil | Prix | LLMs | Spécialité |
|---|---|---|---|
| GitHub Copilot | 10$/mois | GPT-4o, Claude | Autocomplétion, plus populaire |
| Cursor | 20$/mois | GPT-4o, Claude, custom | IDE complet IA-natif, multi-file |
| Codeium (Windsurf) | Gratuit/15$ | Propre modèle | Alternative gratuite solide |
| Amazon CodeWhisperer | Gratuit | Propre modèle | AWS-optimisé |
| Tabnine | Gratuit/12$ | Propre modèle | Privacy-first, self-hosted |
L'IA code ≠ comprendre le code
L'IA génère du code qui SEMBLE correct. Sans comprendre ce qu'elle écrit, vous ne pouvez pas :
- →Détecter des bugs subtils
- →Optimiser les performances
- →Maintenir le code à long terme
- →Passer un entretien technique Utilisez l'IA pour accélérer, pas pour remplacer votre compréhension. Relisez TOUJOURS le code généré.
🏋️ Exercice pratique (25 minutes)
- →Installez GitHub Copilot (gratuit pour les étudiants) ou Codeium (gratuit)
- →Ouvrez un nouveau fichier Python
- →Écrivez le commentaire : "# Classe JobTracker qui gère des candidatures avec CRUD, filtrage par statut, et export CSV"
- →Laissez l'IA générer le code, puis vérifiez et corrigez
- →Essayez le chat : demandez d'ajouter des tests unitaires
Quel est le risque principal d'utiliser un AI coding assistant sans vérifier le code généré ?
Comment obtenir de meilleures suggestions de la part de Copilot ?