Le cours Express.js - Module 3 : gestionnaire de paquets de nœuds (NPM) | Shivendra Raghuvanshi | Skillshare
Recherche

Vitesse de lecture


1.0x


  • 0.5x
  • 0.75x
  • 1 x (normale)
  • 1.25x
  • 1.5x
  • 1.75x
  • 2x

Le cours Express.js - Module 3 : gestionnaire de paquets de nœuds (NPM)

teacher avatar Shivendra Raghuvanshi, Lead Developer and Online Teacher

Regardez ce cours et des milliers d'autres

Bénéficiez d'un accès illimité à tous les cours
Suivez des cours enseignés par des leaders de l'industrie et des professionnels
Explorez divers sujets comme l'illustration, le graphisme, la photographie et bien d'autres

Regardez ce cours et des milliers d'autres

Bénéficiez d'un accès illimité à tous les cours
Suivez des cours enseignés par des leaders de l'industrie et des professionnels
Explorez divers sujets comme l'illustration, le graphisme, la photographie et bien d'autres

Leçons de ce cours

    • 1.

      Introduction du cours

      2:26

    • 2.

      Débuter avec NPM

      3:59

    • 3.

      Le cœur des projets Node.js : package.json

      3:12

    • 4.

      Installer et gérer les packages de nœuds

      3:23

    • 5.

      Intégrer des paquets de nœuds dans votre projet

      3:30

    • 6.

      Gérer les dépendances comme un pro

      3:32

    • 7.

      Paquets et contrôle de versions NPM : bonnes pratiques

      4:01

    • 8.

      Explication des versions sémantiques

      5:16

    • 9.

      Garder une trace des paquets installés

      1:32

    • 10.

      Aperçu du registre NPM

      2:56

    • 11.

      Améliorer vos forfaits locaux

      5:16

    • 12.

      Comprendre les dépendances de développement

      2:09

    • 13.

      Comment désinstaller les packages de nœuds

      0:52

    • 14.

      Gérer les paquets de nœuds globaux

      2:50

  • --
  • Niveau débutant
  • Niveau intermédiaire
  • Niveau avancé
  • Tous niveaux

Généré par la communauté

Le niveau est déterminé par l'opinion majoritaire des apprenants qui ont évalué ce cours. La recommandation de l'enseignant est affichée jusqu'à ce qu'au moins 5 réponses d'apprenants soient collectées.

2

apprenants

--

projet

À propos de ce cours

Ce cours offre une compréhension complète du gestionnaire de paquets Node (NPM), l'épine dorsale de la gestion de projet Node.js. Conçu pour les débutants et les développeurs expérimentés, il couvre tout, des bases du NPM aux techniques avancées de gestion de paquets. Grâce à des conférences pratiques, vous apprendrez à installer, gérer et mettre à niveau efficacement les dépendances tout en respectant les meilleures pratiques du secteur. Vous explorerez également des sujets essentiels tels que le contrôle de versions sémantiques, les dépendances de développement et la gestion des paquets globaux.

Conférences :

  1. Débuter avec NPM
    Introduction au NPM, à son objectif et à la façon dont il simplifie le développement de Node.js.

  2. Le cœur des projets Node.js : package.json
    Apprendre la structure et l'importance de package.json dans vos projets.

  3. Installation et gestion des packages de nœuds
    Un guide étape par étape pour installer, mettre à jour et supprimer des packages de nœuds.

  4. Intégrer des paquets de nœuds dans votre projet
    Apprenez à intégrer efficacement des paquets tiers dans votre base de code.

  5. Gérer les dépendances comme un pro
    Maîtriser l'art d'organiser et de maintenir les dépendances des projets.

  6. Packages et gestion de versions NPM : bonnes pratiques
    Découvrez les bonnes pratiques pour gérer les versions et assurer la stabilité des projets.

  7. Les versions sémantiques expliquées
    Comprendre les règles de version sémantique et leur importance dans la gestion des dépendances.

  8. Suivre les paquets installés
    Explorer les outils et les commandes pour lister et surveiller les paquets installés.

  9. Aperçu du registre NPM
    Obtenez des informations sur le registre NPM et apprenez à trouver les bons packs.

  10. Mettre à niveau vos forfaits locaux
    Apprenez à mettre à niveau les dépendances dans vos projets de manière sûre et efficace.

  11. Comprendre les dépendances de développement
    Faire la différence entre les dépendances de développement et de production et leurs cas d'utilisation.

  12. Comment désinstaller les paquets de nœud
    Un guide pour supprimer correctement les paquets inutilisés ou indésirables de votre projet.

  13. Gérer les paquets de nœuds globaux
    Apprendre les nuances de la gestion des paquets installés globalement et quand les utiliser.

À la fin de ce cours, vous disposerez de bases solides en NPM, vous permettant de rationaliser votre flux de travail de développement et de gérer vos projets Node.js en toute confiance.

Rencontrez votre enseignant·e

Teacher Profile Image

Shivendra Raghuvanshi

Lead Developer and Online Teacher

Enseignant·e
Level: All Levels

Notes attribuées au cours

Les attentes sont-elles satisfaites ?
    Dépassées !
  • 0%
  • Oui
  • 0%
  • En partie
  • 0%
  • Pas vraiment
  • 0%

Pourquoi s'inscrire à Skillshare ?

Suivez des cours Skillshare Original primés

Chaque cours comprend de courtes leçons et des travaux pratiques

Votre abonnement soutient les enseignants Skillshare

Apprenez, où que vous soyez

Suivez des cours où que vous soyez avec l'application Skillshare. Suivez-les en streaming ou téléchargez-les pour les regarder dans l'avion, dans le métro ou tout autre endroit où vous aimez apprendre.

Transcription

1. Introduction du cours: Bon retour. Je m'appelle Shawn Ragunhi et je suis ravi de vous accueillir dans le troisième modèle du gestionnaire de packages de nœuds Express JS Cores En tant que développeur informatique complet avec des années d' expérience dans le développement d' applications évolutives, j'ai beaucoup travaillé avec NBM pour gérer les dépendances et optimiser les flux de travail des projets Maintenant, je suis ici pour partager cette expertise avec vous. Dans ce module, nous aborderons en profondeur NBM, l'épine dorsale de chaque projet Nord Js Voici ce que vous apprendrez à créer et à comprendre les packages en JSON, le cœur de tout projet Nor Js, à installer, gérer et intégrer des packages dans vos projets meilleures pratiques en matière de gestion des dépendances, y compris le portionnement sémantique, des informations sur le NBMrgistry et comment gérer efficacement les packages globaux et gérer efficacement les packages globaux Et même des sujets avancés tels que la mise à niveau des packages, la gestion des dépendances de développement et le blocage des packages inutilisés Ce module est parfait pour tous ceux qui travaillent avec des NJs ou des Express Js, que vous soyez un développeur débutant ou intermédiaire Si vous connaissez déjà les concepts de base du NJ, vous êtes prêt à améliorer vos compétences avec NPM NPM ne consiste pas uniquement à installer des packages. Il s'agit de gérer les bases de votre projet. À la fin de ce cours, vous maîtriserez parfaitement le NPM et la gestion des packages, ce qui vous permettra d' organiser et de gérer efficacement de nouveaux projets JS Vous découvrirez également les meilleures pratiques qui peuvent vous faire économiser d'innombrables heures et éviter des maux de tête dans votre flux de travail de développement. Pour ce module, nous mettrons vos connaissances à l'épreuve avec un quiz de connaissances NPM Ce quiz interactif vous mettra au défi d' appliquer ce que nous avons appris sur les commandes NPM, gestion des dépendances et le versionnement sémantique C'est une façon amusante et engageante de renforcer votre compréhension et de vous assurer que vous êtes prêt à utiliser NPM dans des projets du monde réel Je suis ravi de vous guider à travers cet élément essentiel de l'écosystème Nor Jz Plongeons-nous dans le vif du sujet et faisons passer vos compétences au niveau supérieur. 2. Débuter avec NPM: Dans cette section, nous allons examiner NPM ou Node Package Manager, qui est essentiellement un outil com en ligne, ainsi qu'un registre de bibliothèques tierces que nous pouvons ajouter à nos applications de nœuds Donc, pour pratiquement tous les types de fonctionnalités que vous souhaitez ajouter à votre application, il existe très probablement une bibliothèque open source gratuite, un package ou un module de nœud, quel que soit le nom que vous voulez lui donner dans le registre NPM Donc, si vous vous rendez sur npmjs.com, c'est la page d'accueil de Et ce que vous voyez ici est différent selon que vous êtes connecté ou non. Donc voilà, je ne suis pas connecté. Vous pouvez voir un texte marketing de base. Mais ce qui est important ici, c'est qu' il existe actuellement plus de 2 millions de packages sur NPM, et que tout cela est gratuit et réutilisable afin que vous puissiez facilement ajouter ces éléments de base à votre application De plus, si vous avez une idée de module de nœud, si vous avez une idée de fonctionnalité que vous souhaitez partager avec d'autres, vous pouvez créer vos propres modules de nœuds et les publier sur NPM Maintenant, nous ajoutons ces modules à notre application via un outil en ligne de commande également appelé NPM ou gestionnaire de packages de nœuds Donc, la première chose que je veux que vous fassiez est ouvrir le terminal et d'exécuter NPM W. Donc, NPM est livré avec un nœud Lorsque vous installez Node, vous obtenez également NPM. Voyons maintenant la version de NPM. Je cours sur cette machine. Actuellement, j'utilise la version 8.14 0.0 de NPM. Maintenant, il est intéressant de noter que si vous exécutez node Hui, vous pouvez voir que la version de node est différente de la version de NPM car ces deux programmes sont développés indépendamment Maintenant, pendant que vous regardez cette section, il y a de fortes chances que votre version de NPM soit inférieure ou supérieure à la version que j'utilise ici Donc, afin que vous ayez exactement la même expérience que dans les vidéos de cette section, je veux que vous vous assuriez que vous utilisez la même version de NPM sur votre machine Laissez-moi donc vous montrer comment installer la version 8.14 0.0 de NPM. Exécutez NBM space I. Il s'agit de l'abréviation d'installation Ensuite, espace G, c'est l'abréviation global car nous voulons installer cette page globalement sur cette machine Ce n'est pas spécifique à une application, d'accord ? Ensuite, le nom du package, qui est NPM, lors de la signature, et ici nous définissons le numéro de version Donc 188,14 0.0. Maintenant, si vous êtes sur Mac, vous devez corriger ce problème avec un pseudo, car il est probable que les autorisations sur votre machine ne soient pas correctement configurées. Et lorsque vous l'exécutez , vous pouvez obtenir une erreur d'autorisation car vous installez un package globalement. Donc, une solution simple qui consiste à utiliser un pseudo. Et encore une fois, ce n' est que pour les utilisateurs de Mac. Sous Windows, si une erreur d'autorisation s'affiche, vous devez ouvrir la fenêtre PowerShell avec des privilèges administratifs Maintenant, exécutons-le. Maintenant, vous devrez peut-être entrer votre mot de passe car vous installez un package global, d'accord ? Maintenant, cela va prendre quelques secondes. Après cela, assurez-vous que tout fonctionne correctement, lancez NPM di ui et vous devriez avoir la version 8.14 0.0 de NPM 3. Le cœur des projets Node.js : package.json: Bien, maintenant je veux que tu crées un nouveau dossier. Appelons cela une démo de NPM. Nous allons utiliser ce dossier tout au long de cette section. Passons maintenant à ce dossier, NPM demo. À présent, avant d'ajouter des packages de notes à votre application, vous devez créer un fichier appelé package point JCN Si vous vous souvenez, dans la dernière section, nous avons défini le type sur module dans package point JSON. package point JCN est donc essentiellement un fichier JCN qui inclut des informations de base sur votre application ou votre projet, telles que son nom, sa version, ses auteurs, l'adresse de son dépôt glt, ses dépendances, En gros, un tas de métadonnées sur votre application, et toutes les applications de nœuds ont par défaut ce package point JCNFle Maintenant, créez un fichier de package JN, nous y exécutons NBM Maintenant, cela vous guidera étape par étape dans la création d'un fichier package JN. Il va donc vous poser un tas de questions. Par exemple, ici, la première question porte sur le nom du package. Et vous pouvez voir qu'il existe une valeur par défaut pour cela, qui est le nom du dossier dans lequel nous créons ce package JCNFle Vous pouvez le modifier ou l' accepter en appuyant sur Entrée. Voici la question suivante, qui est la version définie sur 1.0 0.0. Encore une fois, je vais l'accepter. La question suivante est la description, puis le point d'entrée, qui est index ou Js, par défaut, le testimand Encore une fois, nous allons ignorer cette adresse ou ce référentiel instinctif et les mots clés, le nom de l' auteur, la licence. Enfin, vous pouvez voir cet objet JSON ici. Le nom est La version de démonstration de NPM en est une, et ainsi de suite. Nous avons donc un tas de paires clé-valeur qui représentent les métadonnées de notre projet. Il demande donc si toutes ces informations sont correctes. Nous avons donc présenté D. Et maintenant nous avons un package DjSNFle Donc, une fois de plus, avant d'ajouter des packages de nœuds à votre application, vous devez créer un package DTJSNFle Il est donc recommandé d' vous démarrez exécuter NPM dans un projet de nœud pour créer le package Dot JASN chaque fois que Il existe maintenant un moyen plus rapide de créer ce fichier Dt TSN de package Tout à l'heure, vous y avez lancé NPM, puis vous avez dû répondre à toutes ces questions de base concernant votre projet Maintenant, si vous ne voulez pas le faire, vous pouvez fournir un drapeau en forme de tiret. Avec cela, vous obtenez un package JCNFle avec toutes ces valeurs par défaut Vous n'êtes donc pas obligé de répondre à chaque question une par une. Ensuite, je vais vous montrer comment installer un package de nœuds. 4. Installer et gérer les packages de nœuds: Dans cette conférence, je vais vous montrer comment ajouter une bibliothèque tierce ou un package de nœud tiers à votre application de nœud. Nous allons donc installer une bibliothèque Java Strip populaire appelée lodash Donc sur pmjs.com, ici, si vous recherchez lodash, vous pouvez trouver ce paquet, lodash, et la dernière version est 4.17 0.21 Jetons un coup d'œil. Voici comment nous installons Lodash : nous exécutons simplement NPM install Ladas dans le PowerShell ou le terminal Ci-dessous, vous pouvez voir quelques informations de base sur Ladas Vous pouvez voir l'adresse du dépôt Github. Vous pouvez voir la page d'accueil de ce package qui est lodash.com Vous pouvez consulter les téléchargements hebdomadaires. Vous pouvez voir la dernière version, le nom des collaborateurs, certaines statistiques de base telles que le nombre total de fichiers, taille non compressée, ainsi que d' autres informations de base Ainsi, chaque fois que vous souhaitez travailler avec le package node, npmjs.com est un bon point de départ Maintenant, de retour dans le terminal, installez NBM, ou nous pouvons utiliser un I qui est plus court et plus rapide Donc, NPM, je lodash. Donc, lorsque vous l'exécutez, deux choses se produisent. Tout d'abord, dans le package JCN, vous pouvez voir ces nouvelles dépendances de propriété, et en dessous, vous pouvez voir lodash Ici, dans le package point JS, nous indiquons toutes les dépendances de notre projet et leur version. Ici, la version de Dash est 4.17 0.21. Et nous avons ce personnage spécial du panier, dont je parlerai plus loin dans la section. Ainsi, lorsque vous exécutez l'installation de NPM, NPM va télécharger la dernière version du package Given à partir du registre NPM Ensuite, il le stockera dans un dossier , un nœud, des modules de soulignement Donc, en dessous, vous pouvez voir que nous avons ce dossier lodash. Nous avons ici un tas de fichiers. L'un de ces fichiers est la rotation des packages. Ainsi, chaque module de nœud a cette rotation de package, tout comme notre application de nœud. Donc, si vous regardez la rotation du package ou lodash, vous pouvez voir que la version est 4.17 Vous pouvez voir ici des informations ou des métadonnées supplémentaires sur ce package lodash, telles que la page d'accueil, les mots clés, etc. Dans les versions précédentes de NPM, la bonne façon d'installer un package de nœuds était la suivante Installation de NPM, disons Lodash. Nous avons également dû fournir le drapeau de la SAF. Sans cet indicateur SAF, Lodge ne figurerait pas dans la liste des dépendances du package JSN Mais ce comportement a été modifié dans les versions récentes de NPM, nous n'avons donc plus besoin de spécifier l'indicateur SAFE Exécutez NPM install uniquement au nom du package, et cela mettra à jour le package point GSM Et téléchargez également la dernière version de ce package et stockez-la dans le dossier non modules. 5. Intégrer des paquets de nœuds dans votre projet: Nous avons donc installé cette bibliothèque oh en tant que module de nœud tiers. Utilisons-le maintenant. De retour dans le code VS, je vais créer un nouveau fichier à la racine de ce projet et l'appeler index point Gs. Maintenant, nous allons utiliser la fonction requise, charger le module Loads. Par convention, nous utilisons soulignement pour faire référence à la bibliothèque Loadh. Utilisez la fonction requise, et comme argument, nous fournissons Loads. Voici comment fonctionne la fonction de réparation. Lorsque vous fournissez le nom du module ici, cela suppose d' abord qu'il s' agit d'un module principal. Maintenant, dans node, nous n'avons pas de module principal appelé lodash. La fonction requise pense donc que ce loadsh est peut-être un fichier ou un dossier de ce projet Cependant, plus tôt dans le cours, vous avez appris que pour référencer un fichier ou un dossier, nous utilisons une barre oblique Si l'argument de la fonction requise était pdflash lodash, alors la fonction requise supposerait que nous avons ici un fichier appelé lodash ou Js dans le même Sinon, cela supposerait que lodash est un dossier, et à l'intérieur de ce dossier, nous avons un fichier appelé index ou Js Mais dans ce cas, nous n'avons ni fichier ni dossier appelé dash dans ce produit. La fonction requise passe donc à la troisième étape. Cela suppose que le module que nous avons spécifié ici existe dans le dossier des modules du nœud. Voici donc comment la fonction requise résout un module. Tout d'abord, il suppose qu'il s'agit d'un module principal, sinon il suppose qu'il s'agit d'un fichier ou d'un dossier, et sinon, il recherche ce module dans le dossier des modules du nœud, d'accord ? Nous avons donc chargé le module, utilisons-le maintenant. Si nous nous rendons sur lodge.com, vous pourrez consulter la documentation de la bibliothèque Load Cette bibliothèque inclut de nombreuses fonctions utilitaires utiles. Celui que je vais utiliser dans cette conférence est Includes. Voici donc comment cela fonctionne. Nous passons ici deux arguments et un argument optionnel. Le premier est un tableau. La seconde est la valeur que nous recherchons dans ce tableau. L'argument fréquent est l'index à partir duquel effectuer la recherche. Par défaut, sa valeur est zéro. Et dans les résultats, nous obtenons un booléen. Appelons donc cette méthode et vérifions-nous que nous avons correctement chargé le module odes. Donc Loads point, et regardez, nous obtenons des renseignements. Inclut d'abord, nous lui donnons un tableau, un, deux, trois, puis une valeur comme deux. Nous obtenons le résultat et l'affichons sur la console. Maintenant, de retour dans l'index du nœud terminal lancez Js, et c'est terminé. Voici donc comment vous utilisez des modules de nœuds tiers dans vos applications. 6. Gérer les dépendances comme un pro: Maintenant, j'ai un petit exercice pour toi. Je veux que vous installiez un paquet de nœuds appelé mangos. Nous l'utilisons pour stocker nos données dans Mongo Ib et nous en parlerons plus tard dans le cours Donc, pour l'instant, je veux que vous mettiez la vidéo en pause et que vous installiez ce package, puis inspectiez le package darts and pile ainsi que le dossier des modules du nœud Alors allez-y, mettez la vidéo en pause, et lorsque vous avez terminé, revenez et continuez à regarder. Permettez-moi donc d'installer ce package. Et le PM installe des mangues. Très facile Magnifique. Vous pouvez voir que notre package D JCNFle est mis à jour sous dépendances Nous avons maintenant deux dépendances. Vous pouvez voir des mangues, et la version actuelle est 7.4 0.1 Voyons maintenant ce que nous avons dans le dossier des modules du nœud. Écoutez, nous avons beaucoup de dossiers ici. D'où viennent-ils ? Nous n'avons installé aucune de ces bibliothèques. Nous n'avons installé que Mongos et Lodash. Donc, les autres bibliothèques que vous voyez ici sont d'autres packages de nœuds dont dépend Mongoose Maintenant, dans la version précédente de NPM, nous avions un comportement différent Toutes les dépendances d' un package donné étaient stockées dans ce dossier de package. Par exemple, regardez, voici notre package Lodash. Imaginons que Load Dash ait quelques dépendances. Dans les versions précédentes de NPM, ces dépendances étaient stockées dans ce dossier de chargement dans un autre dossier appelé node modules Nous avions donc une hiérarchie des packages de nœuds et de leurs dépendances. Cependant, cela a créé un gâchis car nous avons fini par installer le même package plusieurs fois. De plus, dans certaines situations, nous nous retrouverions avec une structure très profondément imbriquée Et sous Windows, en particulier, le nombre de caractères que nous pouvons avoir dans un chemin est limité . Dans les versions récentes de NPM, ce comportement est modifié Et maintenant, toutes les dépendances de notre application, ainsi que leurs dépendances, sont stockées dans notre dossier de modules de nœuds. Il y a une exception ici. Si l'un de ces packages utilise une version différente de l'une de ces dépendances, cette version sera stockée localement avec ce package. Imaginons par exemple que dans notre application, nous ayons installé ce module Bison Supposons que la version dont nous dépendons soit la première version de Bison Dans le même temps, Mongos dépend de ce package, mais la version dont dépend Mongos est la version 2 Nous ne pouvons donc pas stocker les versions 1 et 2 du BSN sous des modules nodaux Dans ce cas, étant donné que notre application dépend de la première version de BSN, elle serait stockée ici Mais comme Mangus nécessite des B dans la version deux, ceux-ci seraient stockés ici dans le dossier Mangus Nous aurions donc ici le dossier node modus, et à l'intérieur de ce dossier, nous aurions la version 2 de BSN 7. Paquets et contrôle de versions NPM : bonnes pratiques: Et nous avons plusieurs dossiers à l'intérieur des modules du nœud. Maintenant, il s'agit d'une application très simple. Dans une application du monde réel, nous allons avoir de nombreux dossiers ici, et la taille du dossier des modules du nœud augmentera considérablement. En fait, dans une application du monde réel, dossier des modules de votre nœud peut être de quelques centaines de mégaoctets Lorsque vous archivez votre code source dans un référentiel de contrôle de source, vous ne souhaitez pas inclure ce dossier, car chaque fois quelqu'un extrait votre code dans le référentiel, il doit attendre que des centaines de mégaoctets de données Il en va de même si vous souhaitez copier ce code source d' une machine à une autre. Imaginons que vous souhaitiez l'offrir à un ami par e-mail ou via Dropbox. Vous ne souhaitez pas envoyer tout le contenu du dossier des modules du nœud. Maintenant, vous pourriez demander. Mais qu' est-il des dépendances de nos applications ? Notre application ne fonctionnera pas sans ces dépendances. Eh bien, la bonne nouvelle est que toutes nos dépendances sont stockées ici dans le package JCNPck Donc, actuellement, nous avons ces deux dépendances, et nous avons NPM Nous pouvons donc facilement restaurer ces versions de ces dépendances sur n'importe quelle machine. Maintenant, pour simuler cela, je vais supprimer le dossier des modules de ce nœud. Supprimez donc. OK, c'est parti. De retour dans le terminal, nous pouvons restaurer toutes ces dépendances en exécutant NPM install ou I. NPM examine donc notre package Jason, puis il téléchargera toutes ces dépendances depuis le registre NPM Vous pouvez maintenant voir que notre dossier de modules de nœuds est de retour avec toutes ces dépendances. C'est pourquoi nous devons exclure ce dossier de modules de nœuds de notre référentiel de contrôle de source. Maintenant, en supposant que vous utilisez Git, laissez-moi vous montrer comment exclure ce dossier de G. Si vous utilisez un autre outil de gestion de contrôle de source, les étapes sont différentes, et je vous laisse le soin de déterminer comment procéder. B dans le terminal, je vais initialiser un dépôt Git dans ce dossier, alors allez-y Nous avons donc ici un dépôt Git. Maintenant, si nous exécutons git status, vous pouvez voir les fichiers que nous devons ajouter à notre dépôt Git. donc des modules de nœud index ou Js, du package, du dashlogt JCN qui a été créé par NPM lorsque nous avons installé un package NPM C'est uniquement pour que NPM fasse son travail. Nous n'avons pas à nous inquiéter pour ce fichier. Et enfin, nous avons le package point GSN. Nous voulons maintenant exclure le dossier des modules du nœud ici. Pour revenir dans le code Vuse à la racine de notre dossier, je vais ajouter un fichier avec l'extension Get Ignore Mais ce fichier n'a pas de nom. L'extension est G Ignore. Et ici, nous pouvons répertorier tous les fichiers et dossiers qui devraient être exclus de notre dépôt Git. Dans ce cas, enregistrez les modules avec une barre oblique pour indiquer qu'il s'agit d'un dossier Maintenant, de retour dans le terminal, si nous exécutons git status une fois de plus, nous pouvons voir que nous n' avons plus le dossier node modules ici. Auparavant, nous avions des modules de nœuds, mais maintenant nous n'en avons plus. Au lieu de cela, nous avons Gitignore. C'est ainsi que nous excluons le dossier des modules de nœuds de notre dépôt Git. Enfin, nous lançons git add Period, et Git Comet DM avec un message, mon premier 8. Explication du versioning sémantique: Plus tôt dans cette section, j'ai mentionné ce caractère que nous appelons le caractère en carats. Qu'est-ce que cela signifie ? Eh bien, pour comprendre cela, nous devons d'abord comprendre le versionnement sémantique, également appelé travail SEM Dans le cadre du versionnement sémantique, la version d'un package de notes comporte trois composants Comme vous pouvez le voir ici, avec trois chiffres quatre, 17 et 21. Le premier chiffre est ce que nous appelons la version majeure. La seconde est ce que nous appelons la version mineure. Et la troisième est ce que nous appelons la version patch, une version de correctif, qui est utilisée pour corriger les bogues. Imaginons que demain les développeurs de Lodash trouvent un bogue dans la version actuelle 4.17 0.21, puis ils corrigent un bogue et publient une nouvelle version, et cette version serait Ainsi, lorsqu'ils corrigent un bogue, ils augmentent la version du correctif. La version mineure est utilisée pour ajouter nouvelles fonctionnalités qui ne cassent pas l'APA existant. Donc, si l'équipe de Lodash ajoutait une nouvelle fonctionnalité sans altérer l'APA existant, elle augmenterait la version mineure pour que cette version soit 4.18 0.0 Zéro car dans cette version, ils n'ont pas encore trouvé de bogue. Cette version peut donc être instable. Et au fur et à mesure que des bogues seront corrigés et corrigés, ils augmenteront la version du patch. OK ? Enfin, s'ils ajoutent une nouvelle fonctionnalité susceptible de perturber les applications existantes qui dépendent de cette version de Low Dash, ils augmenteront la version majeure. La prochaine version majeure serait donc 5.0 0.0, d'accord ? C'est ce que nous appelons le versionnement sémantique ou SEM ou. Maintenant, ce caractère en forme de carotte que vous voyez indique à NPM que nous sommes intéressés par n'importe quelle version de Lodash tant que la version principale est Donc, si une version mineure ou un correctif plus récent est disponible, ce package nous intéresserait également. Supposons donc qu'aujourd'hui, lorsque nous démarrons ce projet, nous utilisions cette version 4.17 0.21 Six mois plus tard, quelqu' un extrait ce code de notre référentiel de kits. Ensuite, ils restaurent les packages à l'aide de NPM install. À ce moment-là, s'il existe une nouvelle version de Lodash disponible, tant qu'il s'agit de la version 4, n'y aura pas de modifications majeures n'y a pas de changement majeur, alors cette nouvelle version sera téléchargée et installée à l'intérieur du port des modules du nœud. Autrement, une autre syntaxe pour spécifier cette version sans utiliser le caractère carat est la suivante : quatre points X. Donc, ces deux points sont égaux. Maintenant, parfois, dans certaines applications du monde réel, au lieu du personnage de la carte, vous pouvez voir Tilda, Tilda, d'accord ? Cela signifie que nous sommes intéressés par toutes les versions tant que la version majeure est de sept et la version mineure de quatre. La syntaxe alternative pour spécifier cette version est donc la suivante, 7.4 point X. Donc, si une nouvelle version de correctif est disponible, nous serons également intéressés par cette version. Vous pouvez donc constater que les personnages Carat et Tilda aident à maintenir vos applications à jour avec les dernières versions de ces dépendances Cependant, cela peut parfois entraîner des problèmes dans le monde réel. Par exemple, supposons que Mongoose publie une nouvelle version qui est 7.4 0.2 Ils peuvent corriger un bogue, mais ils peuvent casser autre élément susceptible d' interférer avec votre application. Dans ce cas, vous devez vous assurer que vous utilisez exactement la même version. Donc, si quelqu'un extrait ce code du dépôt trois mois plus tard, vous devez vous assurer qu' exactement de la même version de mangos que celle utilisée le premier jour Pour ce faire, il vous suffit supprimer ce personnage Tilda ou Carat Ainsi, la prochaine fois que vous lancerez l'installation de NPM, vous obtiendrez cette version exacte C'est ainsi que fonctionnent le versionnement sémantique Carrot et Tilda 9. Garder une trace des paquets installés: Vous savez maintenant ce que signifie ce caractère en carats. Cela signifie que dans cette application, nous avons une version dépendante de Lord Ash, condition que la version principale soit quatre. En réalité, lorsque vous restaurez ces dépendances, il y a de fortes chances que la version de low dash qui se trouve le dossier node models soit supérieure à celle que nous avons ici. Comment savoir quelle version est réellement installée ? Eh bien, il y a deux façons. L'une des méthodes consiste à consulter le package ou le fichier JCN de cette bibliothèque Mongoose Nous allons donc accéder aux modules, trouver des mangues. Et ici nous avons le package ou le JSON. Nous pouvons voir la version, et c' est la version exacte qui est installée. Mais vous pouvez voir que c' est un peu fastidieux car vous voudrez peut-être vérifier la version de plusieurs dépendances Vous ne voulez pas naviguer dans ce dossier, donner un dossier ESA, regarder le package ou Jason. Des conseils. Si vous souhaitez voir la liste de toutes les dépendances installées et leur version exacte, vous pouvez simplement exécuter NPM LS Vous pouvez maintenant voir les dépendances de votre application. Nous avons donc Lodash et mangos. 10. Aperçu du registre NPM: Plus tôt dans cette section, je vous ai dit que si vous souhaitez en savoir plus sur un package NPM, vous pouvez simplement vous rendre sur tonpms.com Et recherchez ici ce package. Disons, mangouste. Voici donc la mangouste que nous utilisons en version 7.4 0.2. Sur cette page, nous pouvons voir toutes les métadonnées du package mongoose L'une des propriétés qui pourraient vous intéresser est celle des dépendances. Nous pouvons voir toutes les dépendances des mangos, mais il existe un moyen plus rapide de trouver toutes les métadonnées relatives à cette bibliothèque De retour dans le terminal, nous pouvons exécuter NPM view et spécifier un package ici comme Mongoose Maintenant, ce que vous voyez ici est un package point JcnFive de la bibliothèque Mongoose Vous pouvez donc voir des propriétés intéressantes telles que les dépendances. Vous pouvez voir que la mangouste dépend de Mongo E B, et voici la version Dans ce cas, cela dépend donc exactement de la version 5.7 0.0 de Mongo DB car ici nous n' avons pas les caractères carotte ou tilda De plus, cela dépend de Bel. Et voici la carotte. Donc, tant que la version est cinq, tout va bien. Si une version mineure est disponible, cette version pourrait également être compatible avec les mangues Ici, vous pouvez également voir la dernière version , 7.4 0.2, ainsi que les autres propriétés de cette bibliothèque. Maintenant, ce package JCNFle est trop volumineux. C'était difficile à lire. Si vous n'êtes intéressé que par les dépendances, vous pouvez exécuter NPM view mangoes Ainsi, toutes les propriétés que nous avons dans le package point JSON peuvent être ajoutées ici. Dans ce cas, nous examinons uniquement la valeur de la propriété dependencies. Les versions sont une autre propriété utile. Si vous voulez voir toutes les versions de Mongoose publiées jusqu'à présent, nous pouvons exécuter les versions de NPM view mangos Voici donc toutes les versions de cette liste. Cela est utile car vous souhaiterez parfois rétrograder une version antérieure ou passer à une version plus récente Dans ce cas, vous pouvez consulter l'historique. Dans la prochaine conférence, je vais vous montrer comment rétrograder ou mettre à niveau un package de nœuds 11. Améliorer vos forfaits locaux: Dans le monde réel, au fur et à mesure que vous créez votre application, il est possible que des versions plus récentes des dépendances que vous avez installées soient disponibles. Vous voulez donc savoir rapidement quels packages sont obsolètes et quelles sont les nouvelles versions. Pour trouver ces informations, vous devez exécuter NPM outdated Mais avant cela, comme nous avons installé les dernières versions de Lodash et Mongos, nous devons d'abord les rétrograder NPM installe donc la version 4.11 0.1 de Lodash et la version 6.9 0.1 de Mongos Une fois cela fait, lançons NPM outdated. Ici, NPM examine les versions de nos dépendances et les compare à ce que nous avons dans le registre NPM Voyons ce qui se passe ici. La version actuelle de Mongoose est désormais 6.9 0.1, mais la version que nous voulons est 6.11 D'où est-ce que ça vient ? Eh bien, de retour dans le package, Jason, regardez, nous avons une référence à la version 6.9 0.1 de Mongo Mais nous avons ici ce caractère de carotte qui est équivalent à la version six points X. Donc, tant que la version majeure est six, cette version peut être utilisée dans cette application. Maintenant, dans ce cas, la version 6 la plus est la version 6.11 0.5 C'est pourquoi nous avons cette valeur sous la colonne Wanted. Ensuite, nous avons la dernière version. Maintenant, dans ce cas, la dernière version a une version majeure différente. Nous avons donc ici la version sept, mais nous avons actuellement affaire à la version six. Contrairement à Lordsh, notre version actuelle et la dernière version, elles se trouvent toutes deux dans la même version majeure Il s'agit de la version 4. Ainsi, avec NPM obsolète, vous pouvez voir tous les packages obsolètes Si vous souhaitez les mettre à jour, lancez NPM update Toutefois, cela ne fonctionne que pour la mise à jour des versions mineures et des correctifs. En d'autres termes, lorsque je lance ceci, vous pouvez voir que Low Dash sera mis à jour car la version actuelle et la dernière se trouvent toutes deux dans la même version majeure. Cela signifie donc qu'il n'y a aucun changement radical. Mais Mongoose ne sera pas mis à jour vers la dernière version car il ne reste plus qu'une version majeure, et il est possible qu' il y ait des changements importants Ainsi, lorsque nous exécutons la mise à jour de NPM, nous ne voulons pas casser accidentellement notre application Alors, exécutons-le et voyons ce qui se passe. Vous pouvez donc voir que nous avons deux mises à jour ici. Loads est mis à niveau vers la version 4.17 0.21, qui est la dernière version disponible Cependant, Mangus est mis à niveau vers la dernière version majeure des six, à savoir 6.11 0.5 Et c'est ce que nous avions ici dans la colonne Wanted. Si vous souhaitez mettre à jour ces dépendances vers leur toute dernière version, vous pouvez le faire avec un autre outil de ligne de commande. Donc, NPM install G, qui signifie Global, et le nom du package que nous allons installer est NPM Check OK, nous avons maintenant un nouvel outil de ligne de commande appelé NPM check Updates Si je lance ceci, vous pouvez voir tous les packages obsolètes et leur nouvelle version. Dans ce cas, nous avons Mongoose 6.11 0.5, mais la dernière version est 7.4 0.2 Vous pouvez maintenant voir cette ligne Runn qui est l'abréviation de NpmCheckUdates, avec un signe moins pour mettre à Vous pouvez donc exécuter les mises à jour de NPM check ou la plus courte est NCU avec moins U pour la mise à niveau Vous pouvez donc voir que notre package point JSN est mis à jour, et voici la nouvelle version de Mango Mais cette dépendance n' est pas encore installée. Nous avons uniquement mis à jour le package DTJsen. Donc, pour vérifier cela, regardez ici. Dans le package DoJSN, nous avons la version 7 de Mangus. Maintenant, installons cette dépendance. De retour dans le terminal, nous lançons NPM install, et voilà, nous avons maintenant la dernière version de Mangus Donc, si vous êtes dépassé par NPM, nous n'obtenons rien car tous nos packages sont à jour De même, si vous réexécutez NCU, vous pouvez voir que toutes les dépendances correspondent aux dernières versions du package 12. Comprendre les dépendances de développement: Jusqu'à présent, toutes les dépendances que nous avons installées sont des dépendances d'applications telles que mongoose et lodash Notre application a donc besoin de ces dépendances pour fonctionner correctement. Mais parfois, nous utilisons des dépendances qui ne sont utilisées que pendant le développement. Par exemple, nous disposons d'outils pour exécuter des tests unitaires. Nous disposons d'outils pour effectuer une analyse statique de notre code. Nous avons des outils pour regrouper notre code JavaScript, etc. Ces dépendances sont des dépendances de développement. Et ils ne doivent pas pénétrer dans l'environnement de production dans lequel nous déployons notre application. Dans cette conférence, je vais donc vous montrer comment installer un paquet de dépendances et de notes appelé JSHint, qui est un outil d'analyse statique pour le code JavaScript Il analyse essentiellement notre code JavaScript et recherche les problèmes potentiels ou les erreurs syntaxiques Nous exécutons donc NPM install Js int. Maintenant, afin de préciser qu'il s'agit d'une dépendance au développement, nous fournissons ici une profondeur de sauvegarde plate, Asha. Maintenant, dans le package point CJSN, vous pouvez voir Jent possède une propriété différente qui est celle des dépendances DAv Cela indique donc au nœud qu'il s'agit d'une dépendance de développement et qu'elle ne doit pas être intégrée à l'environnement de production. Maintenant, si vous regardez le dossier des modules du nœud, vous pouvez voir que Jent est ici Ainsi, toutes les dépendances, qu' il s'agisse dépendances d' applications ou de dépendances de développement, sont stockées dans le dossier des modules du nœud. Ils sont uniquement séparés dans le package CJSN, d'accord ? 13. Comment désinstaller les packages de nœuds: Jusqu'à présent, vous n'avez appris qu'à installer un package de notes ou à le mettre à niveau. Mais dans le monde réel, il peut arriver que vous souhaitiez installer un package parce que vous n'en avez plus besoin Donc, si tel est le cas, dans le terminal, vous êtes NPM unstall ou UN en abrégé, puis spécifiez le nom du Disons Mongos. Maintenant, dans le package JSN, vous pouvez voir que mongoose n' est plus dépendant et qu'il est également supprimé du dossier des modules du nœud 14. Gérer les paquets de nœuds globaux: Tous ces packages que nous avons installés présent, comme Low Dash et JSHint, sont spécifiques à ce projet de nœud dans ce dossier Mais il existe des packages de nœuds dans le registre NPM qui ne sont pas spécifiques à une application Il s'agit souvent d'outils Amanine auxquels nous voulons accéder de partout. Ils ne sont pas liés à un dossier ou à un projet spécifique. NPM est un exemple de l'un de ces packages globaux. C'est un outil en ligne de commande. Nous pouvons l'exécuter depuis n'importe quel dossier. Ce n'est pas spécifique à un projet donné. Un autre outil de ligne de commande populaire est la CLI angulaire. Nous l'utilisons pour créer un nouveau projet angulaire. Si vous souhaitez installer un package note globalement, vous devez utiliser le drapeau G, comme je vous l'ai montré plus haut dans cette section. NPM installe donc G, puis le nom du package Plus tôt, nous avions installé la version 8.14 0.0 de NPM. Maintenant, si vous supprimez la version de cette commande, vous pouvez mettre à niveau votre NPM vers la dernière version Et bien sûr, si vous êtes sur Mac, vous devez mettre un pseudo ici sauf si vous avez correctement configuré vos autorisations. L'explication de cela dépasse vraiment le cadre de cette section car tous les étudiants de ce cours n' utilisent pas un MAC. Certaines personnes utilisent Windows, et je ne veux pas perdre leur temps avec du matériel inutile. Mais si vous recherchez simplement NPM, psudo Mac sur Google, il existe des articles sur Stack Oflow qui vous indiquent comment configurer correctement vos autorisations, afin que vous n'ayez pas à exécuter pseudo à chaque fois Voici donc comment installer le package Global. Désormais, toutes les autres commandes NPM que vous avez apprises tout au long de cette section fonctionnent également avec des packages globaux Par exemple, si vous souhaitez découvrir tous les packages globaux obsolètes, vous exécutez NPM G outdated Vous pouvez donc voir ici tous les packages globaux que j' ai installés. Le premier n'existe plus. Ma version actuelle est 2.0 0.15, mais la dernière est 3.0 0.1 De même, si vous souhaitez bloquer un package global, nous exécutons NPM uninstall G, puis spécifiez le nom de ce package Ainsi s'achève notre leçon sur le travail avec des packages locaux et mondiaux. Et tout cela concerne l'installation, mise à jour et la désinstallation packages de nœuds du registre NPM J'espère que vous avez apprécié cette section et je vous remercie de votre attention.