JavaScript : Design Patterns et orienté prototype
Développement Web avancéfrontend web JavaScript Design Patterns
Durée
2 jour(s)Niveau
AvancéRéférence
DE-076
Présentation
JavaScript est un langage disposant de multiples paradigmes de programmation en son sein. On y retrouve des éléments de programmation fonctionnelle avec l’utilisation massive des fonctions « map », « reduce » et « filter ». La spécification ES6 (ECMAScript 2015) apporte la programmation orientée objet au sein de JavaScript avec notamment le mot-clé « class ».
Mais JavaScript propose depuis longtemps un paradigme spécifique appelé programmation orientée prototype. Représentant la structure interne d’un objet, ce prototype peut être modifié librement, calqué d’un objet à un autre, nous permettant des structures tout aussi complexes que l’orienté objet, mais bien plus flexibles.
Au cours de cette formation, vous découvrirez la programmation orientée prototype, ce qu’elle implique comme avantages et inconvénients, ainsi que l’application de différents patrons de conception (Design Patterns) avec ce paradigme.
Objectifs de la formation
- Comprendre les différents paradigmes concurrents en JavaScript
- Comprendre et analyser l’environnement d’exécution du code JavaScript
- Découvrir la programmation orientée prototype
- Analyser la différence avec la programmation orientée objet
- Savoir appliquer des patrons de conception (Design Patterns) en Orienté Prototype
Public
- Toute personne travaillant ou souhaitant travailler dans le développement de sites et d’applications web.
Prérequis
- Une connaissance du langage JavaScript est nécessaire
- Une connaissance de la programmation orientée objet est un plus
Programme
1- Environnement d’exécution de JavaScript
Différences entre un navigateur et NodeJS
Le standard ECMAScript
Les évolutions de JavaScript dans les paradigmes de programmation
2- Introduction à la programmation orientée prototype
Qu’est ce qu’un prototype ?
Où retrouver les prototypes ?
Agrémenter un prototype à nos besoins
3- Eléments statiques, dynamiques, visibilité
Les propriétés et méthodes d’instance
Les propriétés et méthodes « de classe » (statiques)
L’ajout de propriétés et méthodes à chaud (dynamiques)
Visibilité des propriétés et méthodes : publiques et privées
4- Définir des propriétés avec le descripteur
Tour d’horizon du PropertyDescriptor
Définir des propriétés et des méthodes
Propriétés en lecture seule, énumérables, configurables
5- La classe Object
Qu’est ce que la classe Object ?
L’objet gelé (freeze)
L’objet scellé (sealed)
Les méthodes create et assign
6- Modèles de conception avec l’orienté prototype
Rappels de l’ABC des contextes JavaScript : apply, bind et call
Qu’est ce qu’un Design Pattern ?
Construction de Design Patterns avec l’orienté prototype
Les modèles de l’orienté objet, version prototypes
Date de dernière modification : 22/03/2024
Organisation
Modalités d'évaluation :
Questionnaires à choix multiples (QCM) en fin de formation. L'intervenant formulera également une appréciation sur vos acquis pour l'entièreté de la formation.
Moyens pédagogiques :
Formation alternant la théorie et la pratique, avec un intervenant présentant la formation en direct. Possibilité de réaliser cette formation en face-à-face dans nos locaux, dans vos locaux d'entreprise ou à distance via visioconférence.
Une fois terminée, vous disposerez d'une attestation de suivi de la formation, ainsi que des contenus de cours relatifs au contenu présenté.
Informations pratiques :
En cas de dispense dans nos locaux, le matériel informatique est fourni et l'ensemble des commodités sont accessibles. Nos locaux sont également accessibles aux personnes à mobilité réduite : découvrir notre centre.
Retrouvez toutes les informations pratiques pour préparer votre formation sur notre page dédiée : informations pratiques.
Ces formations pourraient vous intéresser
Introduction à NodeJS : programmation JavaScript serveur
Le développement JavaScript a connu un nouvel essor avec l’arrivée de NodeJS en 2009. D’un environnement majoritairement composé de sites web, JavaScript a été utilisé dans un nombre croissant d’environnements : …
POO et Design Patterns
Le développement informatique nécessite d’être organisé et structuré pour faciliter la maintenance et l’évolutivité, en particulier dans le cadre d’un projet volumineux. Ces trente dernières années, de nouveaux …
JavaScript : paradigmes, programmation objet et fonctionnelle
JavaScript est un langage avec une histoire riche ayant façonné sa syntaxe. Un langage d’abord pensé pour de la manipulation de DOM (Document Object Model) et une programmation événementielle, où ses conventions se …