Les modules ES6 permettent de diviser votre code en fichiers réutilisables et maintenables. C'est LA façon moderne d'organiser du code JavaScript dans des projets réels.
Pourquoi c'est crucial ? Dans un projet professionnel, vous ne mettez pas tout votre code dans un seul fichier de 10 000 lignes ! Les modules permettent de créer du code modulaire, testable et facile à maintenir.
Dans ce cours : import/export, export default, destructuration avancée, spread operator, rest parameters, organisation du code, et conventions professionnelles.
export permet d'exposer des fonctions, variables ou classes depuis un fichier.
import permet de les utiliser dans un autre fichier.
export default permet d'exporter UNE valeur principale par fichier. Utile pour les classes ou fonctions principales.
💡 Astuce : On peut combiner export default avec des exports nommés !
Le spread operator (...) permet de "déplier" un tableau ou un objet.
✅ Utilisation : Copier sans modifier l'original (immutabilité)
Les rest parameters permettent de capturer un nombre variable d'arguments dans une fonction.
🎯 Organisation : Séparez votre code en dossiers logiques (components, utils, services)
Noms trop courts, pas explicites
Noms descriptifs et explicites
Nom vague, trop de paramètres
Nom clair, peu de paramètres, une responsabilité
Commentaires évidents et inutiles
Explique le POURQUOI, pas le COMMENT
👆 Testez ces exemples dans la console interactive !
🎯 Objectifs de ce cours :
✅ Comprendre et utiliser les modules ES6 (import/export)
✅ Maîtriser le spread operator et les rest parameters
✅ Organiser son code de manière professionnelle
✅ Appliquer les bonnes pratiques de nommage et de structure
✅ Écrire des commentaires utiles
📖 Points clés à retenir :
• export pour exposer, import pour utiliser
• export default pour l'export principal d'un fichier
• Spread (...) pour copier/fusionner tableaux et objets
• Rest parameters (...) pour capturer plusieurs arguments
• Nommez vos variables de façon descriptive (pas x, y, z !)
• Une fonction = une responsabilité
• Commentez le POURQUOI, pas le COMMENT
• Organisez votre code en dossiers logiques
🏋️ Exercices pratiques :
1. Créer un module : Créez un fichier utils.js avec 3 fonctions utilitaires (formatDate, capitalize, truncate) et exportez-les
2. Spread practice : Fusionnez 3 objets de configuration en un seul objet final
3. Rest practice : Créez une fonction average(...numbers) qui calcule la moyenne de N nombres
4. Refactoring : Prenez un ancien code et améliorez le nommage des variables/fonctions
5. Destructuration : Utilisez la destructuration pour extraire proprement les données d'une API (name, email, address.city)
💡 Conventions professionnelles :
• Variables/fonctions : camelCase (getUserData, totalPrice)
• Classes : PascalCase (User, ShoppingCart)
• Constantes : UPPER_SNAKE_CASE (MAX_RETRIES, API_URL)
• Fichiers : kebab-case (user-service.js, api-client.js)
• Booléens : préfixes is/has/can (isActive, hasPermission, canEdit)
• Toujours utiliser const par défaut, let si besoin, jamais var
