Apprenons à nous connaître
Simplement, rapidement et gratuitement
Formation JavaScript avancé
Vous disposez d'un droit d'accès, d'opposition et de rectification des informations vous concernant. Vous pouvez exercer ces droits auprès de nos services à support@skills.hr.
Pour plus d'informations, consultez notre politique de confidentialité.
Formation JavaScript avancé avec TechnoWide
À propos de cette formation
Bordeaux
33
> 1 830€ HT
2 jours
14 heures
Action de formation
Éligible OPCO
En savoir plus
Objectifs pédagogiques
- résolution de problèmes techniques complexes ;
- structures de données et complexité algorithmique ;
- optimisation des performances ;
- choix de conception et arbitrages techniques ;
- maintenabilité, lisibilité et évolutivité du code ;
- bonnes pratiques permettant de concevoir dès le départ des solutions robustes et performantes.
Contenu de la formation
-
Asynchronisme & Event Loop
- Comprendre comment JavaScript exécute le code, pourquoi certaines opérations bloquent l’UI ou Node.js, et comment utiliser correctement callbacks, promises, async/await.
-
Modèle d’exécution
- Single-thread : implications
- Call stack
- Event loop
- Message queue
- Microtasks queue (promises)
- Rendering queue (navigateur)
-
Callbacks
- Erreurs classiques (double callback, callback non appelé)
-
Promises
- États : pending, fulfilled, rejected
- Promise chaining
- Promise.all / allSettled / race / any
- Erreurs : unhandledRejection, catch manquant
-
Async / Await
- Fonction async
- Await dans les boucles
- Parallélisation vs séquentialisation involontaire
- Try/catch
-
Les boucles qui bloquent
- Exemple : boucle de 1 000 000 itérations
- Démonstration : UI figée / Node bloqué
- Solutions :
- Web Workers
- setTimeout(0)
- Promise.resolve()
- Chunking (traitement par batch)
- Streams
-
Gestion de la mémoire
- Comprendre pile, heap, closures, GC, détecter les fuites mémoire, optimiser les structures, et profiler la mémoire dans navigateur & Node.js.
-
Pile & Heap
- Primitives → stack
- Objets → heap
- Références
- =
-
Closures
- Fonction interne + environnement lexical
- Captures involontaires
- Fuites mémoire via closures
- Cas réels : listeners, timers, lambdas en boucle
-
Garbage Collector
- Cycles du GC
- Pourquoi la mémoire n’est pas libérée immédiatement
- GC dans V8 (Node + Chrome)
-
Fuites mémoire
- Timers non nettoyés
- Event listeners persistants
- Caches non purgés
- Variables globales
- Closures capturant des objets lourds
-
Impact des lambdas
- Création massive de closures
- Captures inutiles
- Coût CPU + GC
- Solutions
-
Profiling mémoire
- Chrome DevTools → Memory
- Node.js
-
Structuration du code
- Maîtriser les mécanismes avancés de structuration : this, prototypes, classes, scopes, modules, et impact des déclarations sur les performances.
-
Préservation du this
- Contexte d’exécution
- Problèmes classiques :
- this perdu dans callback
- this dans les listeners
-
Choix des déclarations
- var → hoisting, scope global, pièges
- let → scope bloc
- const → immutabilité de la référence
- Impact sur les performances :
- allocations
- réassignations
- optimisation V8
-
Algorithmes & Design Patterns
- Optimiser les traitements lourds, structurer les algorithmes, et utiliser les bons patterns pour les données massives.
-
Bonnes pratiques d’algorithmie
- Optimisation des boucles
- Early return
- Short-circuiting
- Map / Reduce / Filter vs boucles classiques
- Streams pour gros volumes
-
Traitement de jeux de données
- Pagination
- Chunking
- Lazy evaluation
- Générateurs
- Iterators
-
Design Patterns utiles
- Strategy → choix d’algorithme
- Factory → création d’objets lourds
- Observer → gestion d’événements
- Decorator → enrichissement sans surcharge mémoire
- Singleton → cache centralisé (avec WeakMap)
L'organisme de formation
TechnoWide
Assurer votre succès !
Découvrir TechnoWide
Diplôme / Certification
- Pas de certification
Plus qu'une formation !
Équipe pédagogique
Votre formateur est un consultant et architecte logiciel avec plus de 30 années d'expériences pédagogiques et techniques.
Ressources pédagogiques
- Moyens pédagogiques : Réflexion de groupe et apports théoriques du formateur, Travail d'échange avec les participants sous forme de réunion-discussion, Utilisation de cas concrets issus de l'expérience professionnelle, Validation des acquis par des questionnaires, des tests d'évaluation, des mises en situation et des jeux pédagogiques, Remise d'un support de cours.
- Moyens techniques en Présentiel : Accueil des stagiaires dans une salle dédiée à la formation, équipée d'ordinateurs, d'un vidéo projecteur d'un tableau blanc et de paperboard.
- Moyens techniques en Distanciel : A l'aide du logiciel Teams, un micro et une caméra pour l'apprenant, Suivez une formation en temps réel et entièrement à distance. Lors de la classe en ligne, les apprenants interagissent et communiquent entre eux et avec le formateur. Les formations en distanciel sont organisées en Inter-Entreprise comme en Intra-Entreprise. L'accès à l'environnement d'apprentissage (support de cours, labs) ainsi qu'aux preuves de suivi et d'assiduité (émargement, évaluation) est assuré.
D'autres formations qui pourraient vous intéresser
Formation Jenkins - Créer une plateforme d’intégration continue
Lieux sur devis
> 1360€ HT
2 jours | 14 heures
Formation Développement de Web Services en utilisant Java
Lieux sur devis
> 1740€ HT
3 jours | 21 heures
Découvrir plus de formations !
-
- Formation en Langages de programmation à Paris
- Formation en Langages de programmation à Saint-Herblain
- Formation en Langages de programmation à Noves
- Formation en Langages de programmation à Nantes
- Formation en Langages de programmation à Courville-sur-Eure
- Formation en Langages de programmation à Pau
- Formation en Langages de programmation à Le Mans
- Formation en Langages de programmation à Saint-Sébastien-sur-Loire
- Formation en Langages de programmation à Charnay
- Formation en Langages de programmation à Colomiers
- Formation en Langages de programmation à Valence
- Formations dans Langages de programmation à distance
-
- Formation en Bases de données à Bordeaux
- Formation en Habilitations à Bordeaux
- Formation en Français à Bordeaux
- Formation en Gestion de projets à Bordeaux
- Formation en Outils collaboratifs à Bordeaux
- Formation en Paramédical à Bordeaux
- Formation en Réseaux informatiques à Bordeaux
- Formation en Gérontologie à Bordeaux
- Formation en Sécurité à Bordeaux
- Formation en Élus IRP et CSE à Bordeaux
- Formation en Multimédia à Bordeaux
- Formation en Business Intelligence à Bordeaux