Bonnes pratiques¶
Sécurité, performance et habitudes qui font la différence entre un éditeur qui rame et un outil de productivite.
Sécurité¶
Workspace Trust¶
VS Code demande de "faire confiance" a un dossier avant d'exécuter du code (extensions, tasks, terminal). C'est une protection contre les dépôts malveillants.
// User settings — restreindre par defaut
{
"security.workspace.trust.untrustedFiles": "prompt",
"security.workspace.trust.startupPrompt": "once"
}
Dépôts inconnus
Ne faites jamais confiance a un dépôt clone depuis une source inconnue sans l'avoir inspecte. Un .vscode/tasks.json malveillant peut exécuter du code arbitraire a l'ouverture du projet.
Extensions¶
- N'installez que des extensions verifiees (badge ✓ sur le Marketplace)
- Verifiez le nombre de telechargements et la date de dernière mise à jour
- Lisez les permissions demandées (accès réseau, système de fichiers)
- Preferez les extensions de Microsoft, Red Hat ou des éditeurs de langages officiels
Secrets¶
- Ne stockez jamais de secrets dans
settings.json - Utilisez des variables d'environnement referencees dans
launch.json:
{
"configurations": [
{
"name": "App",
"type": "node",
"request": "launch",
"env": {
"DATABASE_URL": "${env:DATABASE_URL}",
"API_KEY": "${env:API_KEY}"
}
}
]
}
Performance¶
Reduire la charge¶
| Action | Gain |
|---|---|
| Désactiver les extensions inutiles par workspace | Mémoire, demarrage |
| Désactiver la minimap | Rendu GPU |
Exclure les dossiers lourds (node_modules, .git, vendor) | Indexation |
| Désactiver le suivi de fichiers sur les gros dépôts | I/O disque |
{
"files.watcherExclude": {
"**/node_modules/**": true,
"**/.git/objects/**": true,
"**/vendor/**": true,
"**/dist/**": true
},
"search.exclude": {
"**/node_modules": true,
"**/dist": true,
"**/.terraform": true
}
}
Diagnostiquer les lenteurs¶
Ctrl+Shift+P → "Developer: Startup Performance" affiche le temps de demarrage de chaque extension. Desactivez celles qui prennent plus de 500ms sans raison.
Raccourcis essentiels a memoriser¶
Les 10 raccourcis qui couvrent 80% des besoins quotidiens :
| # | Action | Windows/Linux | macOS |
|---|---|---|---|
| 1 | Palette de commandes | Ctrl+Shift+P | Cmd+Shift+P |
| 2 | Ouvrir un fichier | Ctrl+P | Cmd+P |
| 3 | Recherche globale | Ctrl+Shift+F | Cmd+Shift+F |
| 4 | Terminal | Ctrl+` | Cmd+` |
| 5 | Aller a la définition | F12 | F12 |
| 6 | Selectionner occurrence | Ctrl+D | Cmd+D |
| 7 | Commenter | Ctrl+/ | Cmd+/ |
| 8 | Déplacer une ligne | Alt+Up / Alt+Down | Option+Up / Option+Down |
| 9 | Renommer symbole | F2 | F2 |
| 10 | Actions rapides | Ctrl+. | Cmd+. |
Keybindings personnalises¶
Modifier : Ctrl+Shift+P → "Préférences: Open Keyboard Shortcuts (JSON)"
// keybindings.json — exemples utiles
[
{
"key": "ctrl+shift+t",
"command": "workbench.action.tasks.runTask"
},
{
"key": "ctrl+shift+d",
"command": "editor.action.duplicateSelection"
}
]
Imprimer la cheatsheet
Ctrl+Shift+P → "Help: Keyboard Shortcuts Référence" ouvre un PDF avec tous les raccourcis. Imprimez-le et gardez-le visible les premières semaines.