freeCodeCamp vient de lancer une mise à jour majeure de notre Certification JavaScript Algorithms and Data Structures. Vous pouvez maintenant apprendre JavaScript en construisant 21 projets !

Au lieu de coder à travers une série de défis, vous apprendrez les fondamentaux de JavaScript en construisant 16 projets pratiques + 5 projets de certification. Chacun des projets pratiques vous guidera à travers un processus étape par étape pour construire des applications dynamiques HTML, CSS et JavaScript.

Notez également que toutes les certifications plus anciennes que vous avez obtenues resteront valides à l'avenir.

J'ai créé une vidéo de démonstration de chacun des projets que vous construirez tout au long de ce cours.

Voici la liste complète des projets que vous construirez :

  1. Apprendre les bases de JavaScript en construisant un jeu de rôle
  2. Apprendre la validation de formulaire en construisant un compteur de calories
  3. Apprendre les méthodes de base des chaînes et des tableaux en construisant un lecteur de musique
  4. Apprendre l'objet Date en construisant un formateur de date
  5. Construire un vérificateur de palindrome - Projet de certification
  6. Apprendre les méthodes modernes de JavaScript en construisant des cartes d'équipe de football
  7. Apprendre localStorage en construisant une liste de tâches
  8. Apprendre la récursivité en construisant un convertisseur décimal vers binaire
  9. Construire un convertisseur de nombres romains - Projet de certification
  10. Apprendre la pensée algorithmique de base en construisant un trieur de nombres
  11. Apprendre les méthodes avancées de tableaux en construisant une calculatrice statistique
  12. Apprendre la programmation fonctionnelle en construisant une feuille de calcul
  13. Apprendre les expressions régulières en construisant un filtre anti-spam
  14. Construire un validateur de numéro de téléphone - Projet de certification
  15. Apprendre les bases de la POO en construisant un panier d'achat
  16. Apprendre la POO intermédiaire en construisant un jeu de plateforme
  17. Apprendre la pensée algorithmique intermédiaire en construisant un jeu de dés
  18. Construire une caisse enregistreuse - Projet de certification
  19. Apprendre Fetch et les promesses en construisant une page des auteurs de fCC
  20. Apprendre la programmation asynchrone en construisant un tableau de classement du forum fCC
  21. Construire une application de recherche Pokémon - Projet de certification

Apprendre les bases de JavaScript en construisant un jeu de rôle

Image Aperçu du jeu de rôle JavaScript

Pour le premier projet, vous apprendrez les concepts fondamentaux de la programmation en JavaScript en codant votre propre jeu de rôle. Vous apprendrez à travailler avec des tableaux, des chaînes, des objets, des fonctions, des boucles, des instructions if/else, et plus encore.

Vous commencerez par construire la structure HTML et CSS à l'intérieur de l'éditeur freeCodeCamp. Ensuite, vous passerez à la construction de la fonctionnalité JavaScript.

Image Étape 53 pour le jeu de rôle JavaScript

Ce projet vous donnera beaucoup de répétition et de pratique pour travailler avec les bases de JavaScript. Et si vous êtes bloqué à une étape, vous serez guidé vers la solution à travers une série d'indices.

Image Indice pour le jeu de rôle JavaScript dans l'éditeur freeCodeCamp

Apprendre la validation de formulaire en construisant un compteur de calories

Image Projet de compteur de calories JavaScript

Dans ce projet de compteur de calories, vous apprendrez à valider les entrées utilisateur, à effectuer des calculs basés sur ces entrées, et à mettre à jour dynamiquement votre interface pour afficher les résultats. Ce projet couvre les expressions régulières de base, les littéraux de gabarit, la méthode addEventListener(), et plus encore.

Apprendre les méthodes de base des chaînes et des tableaux en construisant un lecteur de musique

Image Projet de lecteur de musique JavaScript

Dans ce projet, vous coderez un lecteur MP3 de base en utilisant HTML, CSS et JavaScript. Le projet couvre des concepts fondamentaux tels que la gestion de la lecture audio, la gestion d'une liste de lecture, la mise en œuvre des fonctionnalités de lecture, pause, suivant, précédent et aléatoire.

Vous apprendrez à travailler avec des méthodes essentielles de chaînes et de tableaux comme find(), forEach(), map(), et join().

Apprendre l'objet Date en construisant un formateur de date

Image Projet de formateur de date JavaScript

Dans ce projet, vous apprendrez à travailler avec l'objet Date de JavaScript, y compris ses méthodes et propriétés. Vous apprendrez également à formater correctement les dates.

Ce projet couvrira des concepts tels que les méthodes getDate(), getMonth(), et getFullYear().

Projet de certification : Construire un vérificateur de palindrome

Image Aperçu du vérificateur de palindrome

Pour ce projet de certification, vous construirez un vérificateur de palindrome. Un utilisateur devrait pouvoir entrer un mot ou une phrase et votre application devrait vérifier correctement s'il s'agit d'un palindrome.

Un palindrome est un mot ou une phrase qui peut être lu de la même manière de gauche à droite et de droite à gauche, en ignorant la ponctuation, la casse et l'espacement.

Il s'agit de l'un des cinq projets de certification qui comptent pour l'obtention de la certification JavaScript Algorithms and Data Structures.

Apprendre les méthodes modernes de JavaScript en construisant des cartes d'équipe de football

Image Aperçu du projet de cartes d'équipe de football

Dans ce projet de cartes d'équipe de football, vous apprendrez à travailler avec la manipulation du DOM, la déstructuration d'objets, la gestion des événements et le filtrage des données.

Ce projet couvrira des concepts comme les instructions switch, les paramètres par défaut, Object.freeze(), la méthode map(), et plus encore.

Apprendre localStorage en construisant une liste de tâches

Image Aperçu de l'application TODO

Le stockage local est une fonctionnalité des navigateurs web qui permet aux applications web de stocker des paires clé-valeur de manière persistante dans le navigateur de l'utilisateur. Cela permet aux applications web de sauvegarder des données pendant une session, puis de les récupérer lors d'une session de page ultérieure.

Dans cette application TODO, vous apprendrez à gérer les entrées de formulaire, à gérer le stockage local, à effectuer des opérations CRUD (Create, Read, Update, Delete) sur les tâches, à implémenter des écouteurs d'événements et à basculer les éléments de l'interface utilisateur.

Apprendre la récursivité en construisant un convertisseur décimal vers binaire

Image Aperçu du convertisseur décimal vers binaire

La récursivité est un concept de programmation où une fonction s'appelle elle-même. Cela peut réduire un problème complexe en sous-problèmes plus simples, jusqu'à ce qu'ils deviennent simples à résoudre.

Dans ce projet, vous construirez un convertisseur décimal-binaire en utilisant JavaScript. Vous apprendrez les concepts fondamentaux de la récursivité, explorerez la pile d'appels et construirez une représentation visuelle du processus de récursivité à travers une animation.

Projet de certification : Construire un convertisseur de nombres romains

Image Aperçu du projet de nombres romains

Pour ce projet de certification, vous construirez un convertisseur de nombres romains. Un utilisateur devrait pouvoir entrer un entier et votre application devrait retourner correctement un nombre romain.

Il s'agit de l'un des cinq projets de certification qui comptent pour l'obtention de la certification JavaScript Algorithms and Data Structures.

Apprendre la pensée algorithmique de base en construisant un trieur de nombres

Image Aperçu du projet de trieur de nombres

En informatique, il existe des algorithmes de tri fondamentaux que tous les développeurs devraient apprendre. Dans ce projet de trieur de nombres, vous apprendrez à implémenter et à visualiser différents algorithmes de tri comme le tri à bulles, le tri par sélection et le tri par insertion – tout cela avec JavaScript.

Ce projet vous aidera à comprendre les concepts fondamentaux derrière ces algorithmes et comment vous pouvez les appliquer pour trier des données numériques dans des applications web.

Apprendre les méthodes avancées de tableaux en construisant une calculatrice statistique

Image Aperçu de la calculatrice statistique

Dans ce projet de calculatrice statistique, vous acquerrez de l'expérience dans la gestion des entrées utilisateur, la manipulation du DOM et l'enchaînement de méthodes. Vous vous exercerez en effectuant des calculs statistiques comme la moyenne, la médiane, le mode, la variance et l'écart type.

Apprendre la programmation fonctionnelle en construisant une feuille de calcul

Image Aperçu du projet de feuille de calcul

En programmation fonctionnelle, les développeurs organisent le code en fonctions plus petites, puis combinent ces fonctions pour construire des programmes complexes.

Dans ce projet d'application de feuille de calcul, vous apprendrez à analyser et à évaluer des expressions mathématiques, à implémenter des fonctions de feuille de calcul, à gérer les références de cellules et à créer des interfaces web interactives. Vous apprendrez à mettre à jour dynamiquement la page en fonction des entrées utilisateur.

Ce projet couvrira des concepts comme la méthode map(), la méthode find(), parseInt(), la méthode includes().

Apprendre les expressions régulières en construisant un filtre anti-spam

Image Aperçu du projet de filtre anti-spam

Les expressions régulières, souvent abrégées en "regex" ou "regexp", sont des motifs qui aident les programmeurs à faire correspondre, rechercher et remplacer du texte. Les expressions régulières sont puissantes, mais peuvent être difficiles à comprendre car elles utilisent tant de caractères spéciaux.

Dans ce projet de filtre anti-spam, vous apprendrez les groupes de capture, les assertions positives, les assertions négatives et d'autres techniques pour faire correspondre n'importe quel texte que vous souhaitez.

Projet de certification : Validateur de numéro de téléphone

Image Aperçu du validateur de numéro de téléphone

Pour ce projet de certification, vous construirez un validateur de numéro de téléphone. Un utilisateur devrait pouvoir entrer un numéro ou un ensemble aléatoire de caractères et votre application devrait vérifier correctement s'il s'agit d'un numéro de téléphone valide aux États-Unis ou non.

Il s'agit de l'un des cinq projets de certification qui comptent pour l'obtention de la certification JavaScript Algorithms and Data Structures.

Apprendre les bases de la POO en construisant un panier d'achat

Image Aperçu du projet de panier d'achat

La POO, ou Programmation Orientée Objet, est l'une des principales approches du processus de développement logiciel. En POO, les développeurs utilisent des objets et des classes pour structurer leur code.

Dans ce projet de panier d'achat, vous apprendrez à définir des classes et à les utiliser. Vous créerez des instances de classe et implémenterez des méthodes pour la manipulation des données.

Ce projet couvrira des concepts comme l'opérateur ternary, l'opérateur spread, le mot-clé this, et plus encore.

Apprendre la POO intermédiaire en construisant un jeu de plateforme

Image Aperçu du jeu de plateforme

Dans ce projet de jeu de plateforme, vous continuerez à apprendre sur les classes, les objets, l'héritage et l'encapsulation. Vous apprendrez également à concevoir et à organiser efficacement les éléments de jeu et à acquérir des connaissances en résolution de problèmes et en réutilisation de code.

Apprendre la pensée algorithmique intermédiaire en construisant un jeu de dés

Image Aperçu du jeu de dés

La pensée algorithmique implique la capacité à décomposer des problèmes complexes en une séquence d'instructions bien définies, étape par étape.

Dans ce projet de jeu de dés, vous apprendrez à gérer l'état du jeu, à implémenter la logique du jeu pour lancer les dés, à tenir le score et à appliquer les règles pour diverses combinaisons.

Ce projet couvre des concepts tels que la gestion des événements, la manipulation de tableaux, la logique conditionnelle et la mise à jour dynamique de l'interface utilisateur en fonction de l'état du jeu.

Projet de certification : Construire une caisse enregistreuse

Image Aperçu de la caisse enregistreuse

Pour ce projet de certification, vous construirez une caisse enregistreuse fonctionnelle. Un utilisateur devrait pouvoir entrer de l'argent et la caisse devrait indiquer si un changement est dû et quel montant.

Il s'agit de l'un des cinq projets de certification qui comptent pour l'obtention de la certification JavaScript Algorithms and Data Structures.

Apprendre Fetch et les promesses en construisant une page des auteurs de fCC

Image Aperçu du projet de page des auteurs de freeCodeCamp

Un aspect courant du développement web est d'apprendre à récupérer des données à partir d'une API externe, puis à travailler avec JavaScript asynchrone.

Ce projet de page des auteurs de freeCodeCamp vous montrera comment utiliser la méthode fetch, puis mettre à jour dynamiquement le DOM pour afficher les données récupérées. Ce projet vous apprendra également à paginer vos données afin que vous puissiez charger les résultats par lots.

Apprendre la programmation asynchrone en construisant un tableau de classement du forum fCC

Image Aperçu du projet de tableau de classement du forum

Dans ce projet, vous acquerrez une maîtrise des concepts asynchrones en construisant votre propre tableau de classement du forum freeCodeCamp. Ce projet couvrira l'Fetch API, les promesses, Async/Await, et l'instruction try...catch.

Projet de certification : Construire une application de recherche Pokémon

Image Aperçu de l'application de recherche Pokémon

Pour ce projet de certification, vous construirez une application de recherche Pokémon. Un utilisateur devrait pouvoir entrer le nom ou l'identifiant d'un Pokémon et votre application devrait retourner les statistiques et l'avatar de ce Pokémon.

Il s'agit de l'un des cinq projets de certification qui comptent pour l'obtention de la certification JavaScript Algorithms and Data Structures.

Essayez la nouvelle certification JavaScript Algorithms and Data Structures

Cette certification est actuellement en version bêta. Si vous trouvez des problèmes, veuillez les signaler dans notre dépôt GitHub.

Si vous avez besoin d'aide pour l'un des projets, demandez sur le forum freeCodeCamp.

Lorsque vous êtes prêt, vous pouvez plonger directement dans la nouvelle Certification JavaScript Algorithms and Data Structures.

Ce n'est que le début

Nous travaillerons tout au long de 2024 et 2025 pour aider autant de développeurs que possible à améliorer leurs compétences en JavaScript.

Vous pouvez vous impliquer dans nos efforts open source en devenant bénévole dans la communauté freeCodeCamp.

Et si vous voulez nous aider à accélérer le développement de notre programme JavaScript, et des nombreuses autres initiatives que nous avons en cours, vous devriez devenir un soutien mensuel de notre association.

Bon codage. 🏕🏻