Apprenons à nous connaître
Simplement, rapidement et gratuitement
Formation JavaScript - Développement Web
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 - Développement Web avec TechnoWide
À propos de cette formation
Bordeaux
33
> 1 830€ HT
3 jours
21 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.
-
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
Assurer votre succès !
Découvrir TechnoWide
Public concerné
- Ce cours concerne tous ceux qui sont impliqués dans la mise en place, le développement ou la maintenance d’un site Web : développeurs d’applications ou de Web, administrateurs de systèmes, équipes techniques.
Prérequis
- Formation initiale ou expérience en développement informatique requise. Connaissances préalable du langage HTML et notions de base de JavaScript.
Conditions d'accès
Accessibilité
Vous avez un besoin spécifique d’accessibilité ? Contactez Mr Guillaume SIMON, référent handicap, à l’adresse suivante guillaume.simon@technowide.fr pour étudier au mieux votre demande et sa faisabilité.
Capacité
2 à 10 places
Délai d'accès
3 semaines
Diplôme / Certification
- Pas de certification
Plus qu'une formation !
Équipe pédagogique
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 Langage C/C++, programmation Multicore
> 1830€ HT
Formation Ergonomie et UX Design des interfaces web et mobiles
> 1380€ HT
-
- 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