Cours en ligne Node.js. Développement professionnel d'API REST - cours 32 900 RUB. de HTML Academy, formation 2 mois, Date 15 octobre 2023.
Miscellanea / / November 28, 2023
Dans ce cours, vous apprendrez à réaliser de vrais projets, du même niveau de complexité que dans l'industrie. Et vous les ferez correctement, de sorte qu'après la formation, vous produisez des résultats de haut niveau pour lesquels les entreprises sont prêtes à payer.
Le cours est conçu pour ceux qui souhaitent changer de métier et devenir un professionnel bien rémunéré. Il convient aux travailleurs qui disposent de peu de temps.
Section 1 Introduction à Node.js. CLI
Considérons le plan de travail sur le cours. Faisons connaissance avec la plateforme Node.js et découvrons quelles tâches elle est la mieux adaptée pour résoudre. Voyons en quoi le code serveur en JavaScript diffère du code standard. Préparons les bases du projet et écrivons la première application avec une interface de ligne de commande (CLI).
Questions d'organisation.
Revue de projets personnels.
Schéma de travail sur le cours.
Dépôt de projets de démonstration.
Réduire/Agrandir
Pratique
TypeScript et Node.js.
Cours en TypeScript.
Préparer l'environnement.
Développement CLI.
Format de données TSV.
Section 2 Cycle des événements. Ruisseaux
Apprenons comment fonctionne la boucle d'événements dans Node.js. Faisons connaissance avec les micro et macrotâches. Voyons ce qui détermine l'ordre d'exécution du code asynchrone. Passons ensuite à l'utilisation du système de fichiers. Nous apprendrons comment lire et créer des fichiers, quelles sont les restrictions et nous familiariserons avec les flux. En pratique, nous découvrirons comment générer des fichiers de données volumineux et interagir avec des serveurs distants à partir de Node.js.
Comment fonctionne EventLoop.
Modèle éditeur-abonné (EventEmitter).
Abstraction du tampon.
Ruisseaux.
Réduire/Agrandir
Pratique
Exportez les données vers TSV.
Lecture de gros fichiers.
Requêtes HTTP de Node.js.
Section 3 Architecture des applications
Commençons par concevoir l'architecture de l'application principale. Discutons de différentes approches de l'architecture du bâtiment. Apprenons à diviser une application en couches distinctes. Nous concevrons les premiers services applicatifs: gestion de configuration, journalisation. Faisons connaissance avec l'inversion de contrôle (IoC) et assemblons un conteneur de dépendances. Apprenons à utiliser la bibliothèque Inversify et à injecter des dépendances.
Variables d'environnement.
Enregistrement.
Réduire/Agrandir
Pratique
Architecture applicative.
Service de gestion de configuration.
Service d'exploitation forestière (pino).
IoC
Injection de dépendances.
Section 4 Introduction aux bases de données. MongoDB
Faisons connaissance avec les bases de données et découvrons ce que sont les bases de données et en quoi elles diffèrent. Voyons comment stocker les données sur le serveur. En pratique, nous nous familiariserons avec MongoDB, apprendrons à l'exécuter à l'aide de Docker et nous entraînerons à récupérer et à écrire des données. Apprenons à travailler avec MongoDB depuis Node.js: connexion, collections, modèles (Mongoose, Typegoose).
Introduction aux bases de données.
Présentation de Docker.
Mangouste.
Réduire/Agrandir
Pratique
Installation de MongoDB.
Client pour MongoDB.
Mangouste.
Typeoie.
Section 5 Les bases de données en pratique. Conception REPOS
Pratiquons-nous à travailler avec MongoDB depuis Node.js: nous décrirons tous les modèles, nous familiariserons avec les validateurs et développerons des services d'accès aux données. En pratique, faisons connaissance avec le modèle DTO (Data Transfer Object). Connectons les services permettant de travailler avec la base de données à la CLI. Nous passerons ensuite à la conception de l'API REST et concevrons la première version de l'API REST. Faisons connaissance avec le format OpenAPI et décrivons la première version de la spécification.
Partage des responsabilités.
Objet de transfert de données.
Conception d'API REST.
Format OpenAPI, Swagger.
Réduire/Agrandir
Pratique
Services d'accès aux données.
La validation des données.
Importation de données dans la base de données (CLI).
Spécification OpenAPI.
Section 6 Express.js
Commençons par implémenter l'API REST. Faisons connaissance avec le framework Express.js et discutons de ses forces et faiblesses. Faisons connaissance avec le routage. Concevons une couche d'abstraction: les contrôleurs. Apprenons comment générer et traiter des requêtes vers l'API. Faisons connaissance avec l'outil supplémentaire nodemon. Apprenons à gérer les erreurs.
Traiter les demandes des clients.
Express.js.
Et encore MVC.
Réduire/Agrandir
Pratique
Routage.
Redémarrage de l'application.
Traitement des erreurs.
Contrôleurs.
Section 7 Intergiciel. Validation. Téléchargement de fichiers
Continuons à nous familiariser avec Express.js et à comprendre le concept de middleware. Découvrons de quoi il s'agit et quelles tâches sont faciles à résoudre à l'aide d'un middleware. Ensuite, nous concevrons une abstraction supplémentaire et écrirons certains de nos propres middlewares.
Après cela, nous passerons en douceur à la question de la validation des données - nous découvrirons pourquoi il est important de vérifier les données des clients et nous organiserons la vérification des données d'entrée dans le projet. En pratique, nous ferons connaissance avec les outils de validation joi et class-validator.
Après cela, passons au téléchargement de fichiers. Les clients peuvent transférer non seulement des données texte, mais également des fichiers entiers. Apprenons comment les recevoir côté serveur, les sauvegarder et les renvoyer aux clients. En pratique, nous implémentons le chargement des avatars des utilisateurs.
Intergiciel.
Pourquoi et comment valider les données.
Téléchargement de fichiers.
Réduire/Agrandir
Pratique
Middleware pour la validation des données.
validateur de classe pour la validation.
Téléchargement de fichiers à l'aide de multer.
Intergiciel statique.
Article 8 Restriction d'accès. Autorisation
Toutes les ressources ne devraient pas être disponibles pour les clients anonymes, voyons donc comment restreindre l'accès à certaines ressources. Apprenons comment restreindre l'accès à certaines routes dans Express.js. Voyons en quoi l'autorisation diffère de l'authentification. Faisons connaissance avec les JWT (JSON Web Tokens) et apprenons à les utiliser dans la pratique. Pratiquons-nous à créer des routes privées et implémentons le scénario « Connexion à une partie privée de l'application ».
Autorisation et authentification.
Séances.
Jetons Web JSON.
Réduire/Agrandir
Pratique
Itinéraires privés.
JWT.
José.
Section 9 Back-end et front-end
Découvrons comment se faire des amis backend et frontend. Apprenons à réutiliser DTO côté frontend. Rappelons le modèle « Adaptateur ». Faisons connaissance avec CORS et découvrons les problèmes qu'il résout. Refactorisons la gestion des erreurs: voyons comment formater les erreurs pour les personnes et les machines.
DTO et front-end.
CORS.
Réduire/Agrandir
Pratique
CORS.
Refactoring: séparation des erreurs.
Section 10 Finale
Résumons le cours. Discutons du plan ultérieur d'apprentissage de Node.js.
FoxSPb2012
31.05.2022 G.
Cours sympa sur Node.js
Avantages: présentation du matériel, travail avec un mentor, Inconvénients: suivi du programme de cours, pas de possibilité de modifier un projet personnel. J'ai vraiment aimé le cours, il m'a permis d'élargir ma compréhension des applications en tant que telles (après tout, nous sommes tous utilisateurs de certaines applications), laissez-moi travailler sur le référentiel de démonstration avec des approches/technologies de développement, regarder tout sur le projet de formation et réaliser...
FoxSPb2012
31.05.2022 G.
Cours sympa sur Node.js
Avantages: présentation du matériel, travail avec un mentor, Inconvénients: suivi du programme de cours, pas de possibilité de modifier un projet personnel. J'ai vraiment aimé le cours, il m'a permis d'élargir ma compréhension des applications en tant que telles (après tout, nous sommes tous utilisateurs de certaines applications), laissez-moi travailler sur le référentiel de démonstration avec des approches/technologies de développement, regarder tout sur le projet de formation et réaliser...