Héritage et Polymorphisme
Comprendre extends et super(). Savoir quand utiliser l'héritage. Découvrir le polymorphisme : une même méthode, des comportements différents.
A curated collection of slide presentations and educational content.
Comprendre extends et super(). Savoir quand utiliser l'héritage. Découvrir le polymorphisme : une même méthode, des comportements différents.
Tutoriel étape par étée pour construire un mini-projet e-commerce illustrant Zustand, React Query, React Hook Form + Zod
Maîtriser class, constructor, this et les propriétés privées #. Comprendre l'encapsulation et protéger les données internes.
Apprendre la philosophie de testing frontend, configurer Vitest + React Testing Library, et écrire ses premiers tests de composants : render, screen, queries, userEvent et assertions.
Mettre en pratique Zustand, API client, React Query, React Hook Form + Zod dans une architecture feature-based. Flow CRUD complet : list, create, update, delete.
Maîtriser React Hook Form pour des formulaires performants et Zod pour la validation TypeScript-first. useForm, register, handleSubmit, validation, useFieldArray et intégration avec l'UI.
Comprendre pourquoi on regroupe données et comportements dans des objets, et pourquoi un objet protège ses données et expose des actions. Classe vs Objet, l'analogie du moule et du gâteau.
useQuery, useMutation, query keys, caching, invalidation, optimistic updates et DevTools
Résoudre une série de problèmes algorithmiques classiques en combinant les techniques apprises : compteur de fréquence, Two Sum, anagrammes, et plus longue sous-chaîne.
Comprendre fetch et Axios, construire un client API typé, gérer les erreurs, configurer les variables d'environnement et comprendre CORS
Comprendre le principe de la récursion : cas de base, cas récursif. Implémenter factorielle, Fibonacci et la somme d'un tableau récursivement. Visualiser la pile d'appels.
Découvrir Zustand, la bibliothèque de state management minimaliste pour React. Comprendre pourquoi Zustand, créer des stores, utiliser des selectors et configurer les middlewares.
Comprendre et implémenter le tri à bulles (bubble sort) et le tri par sélection (selection sort), avec visualisations étape par étape.
Implémenter la recherche linéaire et binaire, comprendre pourquoi trier un tableau aide à chercher plus vite.
Projet de synthèse semaine 4 : custom hooks, Error Boundaries et architecture par feature pour une application React complète.
Résoudre le prop drilling et gérer le state global avec Context API et useReducer
Mesurer le temps d'exécution de différents algorithmes, comparer O(n) et O(n²) sur de vrais exemples, et analyser la complexité de fonctions existantes. Pseudo-code, notation Big O, et exercices pratiques.
Navigation côté client avec React Router : BrowserRouter, Routes, Route, Link, NavLink, useParams, routes imbriquées, routes protégées et useSearchParams
JSON.stringify(), JSON.parse(), récapitulatif de la semaine. CRUD complet en mémoire avec séparation données/opérations.
Comprendre la différence entre types primitifs (copie par valeur) et objets (copie par référence). Shallow clone vs deep clone avec spread et structuredClone.
Comprendre useRef et ses deux usages (DOM et valeur mutable), accéder aux éléments DOM, différencier composants contrôlés et non-contrôlés, et utiliser forwardRef pour exposer une ref.
Extraire des valeurs d'objets avec le destructuring, utiliser des valeurs par défaut, renommer des variables, et manipuler des objets imbriqués.
Comprendre les effets de bord, l'anatomie de useEffect, le tableau de dépendances, le cleanup, et quand NE PAS utiliser useEffect.
Rendu de listes avec .map() et key, filtrage et tri, gestion des états loading/error/empty, et discriminated unions pour le typage des états.
Maîtriser Object.keys(), Object.values(), Object.entries(), Object.assign() et le spread operator sur les objets. Combiner ces méthodes avec map/filter/reduce.
Comprendre l'état (state), utiliser useState avec TypeScript, respecter l'immutabilité, lifting state up. Le hook fondamental pour rendre les composants dynamiques.
Structures de données avec des noms explicites. Créer un objet avec {}, accéder aux propriétés (dot notation et bracket notation), méthodes et this, object destructuring.
Comprendre et utiliser la prop children, typer avec ReactNode et PropsWithChildren, composition vs héritage, composants de layout réutilisables, compound components et render props.
Introduction à React : pourquoi une bibliothèque UI, création d'un projet Vite, syntaxe JSX, premiers composants fonctionnels avec props typées en TypeScript
Maîtriser le spread operator [...arr], le destructuring const [a, b] = arr, et le rest parameter ...args
Survivre Ă l'enfer du HTML email et auditer vos pages web avec Chrome Lighthouse
Maîtriser .reduce(), .sort(), .every(), .some() et les méthodes avancées de tableaux JavaScript
Techniques avancées de Tailwind CSS v4 : @apply, personnalisation du config, design tokens, animations custom et introduction à Radix UI.
Comprendre les callbacks et maîtriser les méthodes de tableau .map(), .filter(), .find() et .includes() avec le chaînage de méthodes
Présentation complète sur les tableaux JavaScript en français : création, accès, méthodes de modification, itération, et pièges courants
Comprendre les 3 niveaux de scope, les fonctions pures vs impures, et la composition de fonctions
Présentation complète sur Tailwind CSS et la philosophie utility-first. Couvre l'installation avec Vite, les utilities principales (spacing, colors, typography, flex, grid), le responsive design avec les préfixes sm/md/lg, et les variantes d'état (hover, focus, group-hover).
Apprendre à déclarer des fonctions, utiliser return, les fonctions fléchées et les paramètres par défaut. Insistance sur return vs console.log.
Apprenez à créer des animations fluides avec CSS transitions et keyframes animations
Comprendre FizzBuzz, eviter les erreurs d ordre, et maitriser les 5 patterns de boucles.
Maitriser les differentes formes de boucles dans Javascript
Cours de consolidation du vendredi : revue HTML/CSS, convention BEM, organisation des fichiers CSS, debug avec DevTools, et mini-projet landing page.
A comprehensive presentation about CSS Grid layout system
Les differentes forme de conditions dans le Javascript
Introduction au css layout et opsitionnement flex
Comprendre les differents operateur disponiblke dans javascript et comment les utiliser
Introduction aux Variables et types primitifs dans Javascript
Comprendre les fondamentaux : HTTP, pipeline de rendu, HTML5 sémantique, formulaires accessibles et DevTools.
Découvrir les Pull Requests : proposer des modifications, les faire valider, et résoudre les conflits de merge.