MEVN Stack : MongoDB, Express.js, Vue.js et Node.js

Betribsiwwergräifend Formatioun

U wie riicht sech d'Formatioun?

Développeurs Javascript

Dauer

10,00 Dag(Deeg)

Sprooch(e) vun der Déngschtleeschtung

EN FR

Nächst Sessioun

Virkenntnisser

Bonnes connaissances de Node.js

Ziler

Construire une application web fullstack avec la MEVN Stack : MongoDB, Express.js, Vue.js et Node.js

Inhalt

Découvrir Vue.js

Vue.js: présentation, principes
Comparaison avec d'autres frameworks JS: Angular, React,...
Initialisation d'un projet et interface en lignes de commande
Architecture d'une application Vue.js; objet Vue
Interface de debug
Remise à niveau: Ecmascript5, NodeJSNotions de composants, cycle de vie
Atelier: Installation de l'environnement, création d'une application

Créer des composants

Structure et implémentation d'un composant
Gestion des événements
Imbrication de composants
Slots
Evénements personnalisés
Atelier: Organisation de l'application en composants

Peupler les vues

Méthodes d'écritures des templates: render methods, jsx
Composants fonctionnels
Gestion des animations et des des transitions
Atelier: Utilisation de différentes méthodes pour enrichir les vues

Gérer la navigation dans l'application

Configuration des routes
Sécurité de l'application (filtres d'interceptions)
Gestion des transitions
Atelier: Utilisation de Vue router pour naviguer entre les pages.

Gérer l'état et stocker des données

Vuex: présentation, concepts de base.Gestion des pluginsStockage des données
Atelier: Utilisation de Vuex dans l'application

Interagir avec une application back-end

Chargement et envoi de données de manière asynchroneInterrogation d'un service web REST et traitement d'un flux JSONGestion des formulaires et validation des saisiesIntroduction du data binding
Atelier: Interrogation de services web et exploitation du résultat.

Améliorer son code

Mixins et pluginsUtilisation des Single File Components.vue.
Directives personnalisées
Optimisation des performances
Server Side Rendering
Implémenter des tests unitaires
Atelier: optimisation du code applicatif et tests unitaires.

Comprendre l'architecture microservices

Architecture en couches: du monolythe au microservices
Contraintes d'architecture des microservices
Gestion de l'authentification centralisée dans une architecture microservices
Intérêt d'une passerelle d'API
Gestion centralisée des traces

Développement d'API REST avec Express.js

Express.js: principe, fonctionnalités, pré-requis
Configuration du projet: packages et modules additionnels: Morgan, Helmet, Cors,...
Configuration de morgan pour la gestion des logs de requêtes HTTP
Organisation des couches du projet: routes, services, repositories
Intérêt d'une couche DTO, utilisation d'un mapper d'objets: automapper ou autre
Implémentation de contrôleurs REST: gestion des routes, traitement asynchrone
Gestion des paramètres de méthodes et du mapping
Gestion du downloadGestion de l'upload, configuration
Gestion des services et des transactions associées
Gestion du cross origin avec Cors et restriction des domaines appelants
Test de l'api REST avec Postman
Ecriture de tâches asynchrones, planificationCache web
Atelier: Écriture de micro-services avec Express.js - Test des méthodes de services avec Postman ou autre

Documenter une API REST

Open API Specification (Swagger): présentation, outil
Utilisation de express-openapi
Visualisation avec Swagger Editor
Documentation du code Java, génération de javadoc
Atelier: Documentation de l'api

Intercepter des requêtes et gérer les erreurs

Gestion globale des exceptions
Capture d'exceptions personnalisées
Intercepteurs de requêtes/réponses
Atelier: Gestion des exceptions et implémentation d'intercepteurs

Appeler d'autres API REST (écriture de clients)

http_request: méthodes et paramètres
Ecriture de requêtes GET, POST, PUT, DELETE
Gestion des paramètres et du corps de la requête
Gestion des headers
Gestion des réponses et utilisation de mappers
Atelier: Implémentation de clients pour un service REST

Sécuriser l'API REST

Configuration de Helmet
Gestion des données d’entête
Gestion des utilisateurs et des rôles: mise en place de JWT (passport-jwt)
Hachage des mots de passe avec bcryptjs
Atelier: Intégration de Helmet, jsonwebtoken, dotenv et bcryptjs

Tester une application Express.js avec Jest et SuperTest

Stratégies de tests, types supportés
Installation de jest, supertest et cross-env, configuration de l'application
Mocking des couches de l'application
Tests auto-configurésExécution et reporting
Atelier: implémentation et exécution de tests avec Jest et supertest

Configurer un projet Mongoose

Mongoose: Présentation, fonctionnalités
MongoDB: Installation, structure d'un schéma (collections, documents)
Configuration d'un projet Node.js utilisant Mongoose: pool de connexion, contraintes
Propriétés par défaut et paramétrage
Gestion des options de logging
Atelier: Intégration de Mongoose dans un projet Node.js, configuration de la Bdd NoSQL MongoDB et des traces

Construire un modèle et écrire des requêtes

Modèle de base
Documents et sous-documents
Gestion des types
Requêter des documents
Mise à jour et suppression de documents
Gestion des validations
Mongoose migrations (ts-migrate-mongoose)
Atelier: Réalisation d'un schéma global de BDD MongoDB, gestion des migrations et écriture de requêtes

Maîtriser des concepts avancées

Cache: fonctionnement, mise en cache de requêtes (mongoose-cache)Hooks
Mise en place d'une solution d'audit de tables (historique de modifications)
Atelier: Implémentation d'une couche complète de persistance - mise en place d'un cache

Pedagogesch Methoden

Méthodologie basée sur l'Active Learning : 75% de pratique minimum. Chaque point théorique est systématiquement suivi d'exemples et exercices.

Evaluatioun

Contrôle continu

Certificat, Diplom

Attestation de fin de stage mentionnant le résultat des acquis

Kontakt fir dës Formatioun

Dawan - Service commercial

Dës Formatioune kéinten Iech interesséieren

EN
Dag
Programméiersprooch - Programméiersprooch Java