Partager cet article :
Par rapport à ces trois technologies, le NVM diffère des deux autres. Node Version Manager (NVM) est utilisé pour gérer les versions de Node.js. NPM et Yarn sont des gestionnaires de paquets Node.js. Ils permettent de télécharger, d'installer et de gérer des paquets lors du développement en JavaScript.
Qu'est-ce que le NVM ?
Comme vous le savez déjà, NVM est le gestionnaire de versions de nœuds. Il permet de passer rapidement et facilement d'une version de nœud à l'autre pour tester et développer une application.
Pourquoi utiliser les NVM ?
Le NVM permet aux utilisateurs de :
- Avec une seule commande, vous pouvez télécharger localement n'importe quelle version LTS (Long Term Support) de Node.js.
- À partir de la ligne de commande, vous pouvez rapidement passer d'une version à l'autre de Node.js.
- Créez des alias pour passer facilement d'une version téléchargeable de Node.js à une autre.
Utilisation du NVM
Si NVM est installé, vous pouvez gérer n'importe quelle version de Node.js à l'aide d'une simple commande.
Cette liste répertorie toutes les versions locales installées de Node :
nvm ls
Pour installer une version spécifique, cette commande peut être utilisée :
nvm install <SPECIFIC_NODE_VERSION>
Pour utiliser (ou changer) une version spécifique de Node.js, utilisez la commande suivante :
nvm utiliser <SPECIFIC_NODE_VERSION>
NPM vs Yarn
Gestionnaire de paquets Node (NPM)
NPM est le gestionnaire de paquets par défaut pour Node. Des commandes simples sont prises en charge car il s'agit d'un installateur CLI (Command Line Interface). Il propose des paquets écrits en JSON et est open-source et gratuit. Dans un fichier package.json, les dépendances de votre application Node peuvent être listées et stockées. Les utilisateurs peuvent également distribuer des paquets. Le registre principal npm compte plus de 1,3 million de paquets. L'automatisation de la gestion des dépendances et des paquets est l'objectif principal de NPM. À l'aide d'un fichier "package.json", npm peut installer toutes les dépendances d'un projet en une seule commande lorsqu'il est utilisé comme gestionnaire de dépendances pour un projet local.
Fil (un autre négociateur de ressources)
La version la plus récente et améliorée de NPM est yarn. Facebook, Exponent, Google et Tilde l'ont créé en 2016 pour remplacer NPM. Il a été conçu pour offrir des fonctionnalités complexes qui manquaient à NPM. Pour stabiliser son utilisation, NPM a ajouté quelques fonctionnalités cruciales. Yarn utilise les mêmes techniques que NPM, mais il garde une trace de toutes les données d'installation en interne pour assurer la compatibilité entre les plateformes. Il est également plus sûr et plus stable que NPM.
Les différences
Yarn met en cache tous les paquets installés. Yarn installe les paquets simultanément, et c'est pourquoi Yarn est plus rapide que NPM.
Ils téléchargent tous deux des paquets depuis le dépôt npm. Yarn génère yarn.lock pour verrouiller les versions des dépendances du paquet par défaut.
Yarn effectue un contrôle de sécurité en arrière-plan lorsqu'il télécharge des paquets. Afin d'éviter de télécharger des scripts malveillants et de provoquer des problèmes de dépendance, il utilise les informations de licence du paquet. La sécurité était une préoccupation majeure pour NPM dans ses premières itérations. Depuis la version 6, chaque fois qu'un paquet est installé, NPM effectue un audit de sécurité. Cela permet de s'assurer qu'il n'y a pas de dépendances conflictuelles et de prévenir les vulnérabilités.
Il existe de nombreuses similitudes fondamentales entre Yarn et NPM :
- Fichiers de verrouillage générés automatiquement
- Aide à l'utilisation des espaces de travail
- Support pour l'utilisation de scripts distants - npx vs yarn dlx
Modifications récentes de NPM et Yarn
Yarn et NPM sont constamment mis à jour avec des corrections de bugs et de nouvelles fonctionnalités telles que NPX et PnP.
NPX
Node Package Executor, abrégé NPX. Il s'agit d'une fonctionnalité introduite à partir de la version 5.2.0 de NPM. NPX facilite l'exécution d'instructions uniques. Grâce à NPX, les paquets répertoriés dans le registre NPM peuvent être exécutés sans être ajoutés en tant que dépendances à votre projet.
Pour vous familiariser avec NPX, lisez ce manuel.
Fil2 (Berry)
Avec la sortie de Yarn2, également connu sous le nom de Berry, Yarn a élargi sa gamme de fils. Plug'n'Play, Constraints, Offline Installation, Zero-Installation, Workspaces, et Yarn Dlx ne sont que quelques-unes des nouvelles fonctionnalités de cette édition de Yarn (le nouveau Yarn NPX).
Si vous avez effectué correctement les étapes décrites dans cette section, vous verrez un nouveau bloc dans phpinfo().
Voici les améliorations les plus notables :
Plug'n'Play est une autre méthode d'installation. Contrairement à Node.js, qui crée un répertoire node modules et gère lui-même la résolution, Plug'n'Play génère simplement un fichier pnp.js.
- Élimination des modules de nœuds.
- Les délais d'installation des paquets ont été réduits de 70 %.
- Si vous négligez de fournir une dépendance, Plug'n'Play vous donnera un avertissement.
- Démarrage plus rapide des projets en cours.
Si vous souhaitez en savoir plus sur Plug'n'Play, lisez ce manuel.
Les dépendances d'un projet peuvent être gérées à l'aide de contraintes, qui vous permettent de déclarer des règles générales dans prologue (un langage de programmation déclaratif). Tant qu'il n'y a pas de dépendances incompatibles dans votre référentiel, vous pouvez mettre en place des règles pour les faire respecter.
Espaces de travail modernisés - vous pouvez désormais mettre en place un dépôt mono afin de contrôler les interdépendances entre plusieurs projets. Il est ainsi possible pour plusieurs projets de se référer les uns aux autres. Toute modification apportée à un dépôt met automatiquement à jour les autres.
Les deux fils, Yarn1 et Yarn2, sont très différents. Apprenez à passer de Yarn1 à Yarn2 à l'aide de ce tutoriel pratique.
En conclusion
Il existe de grandes différences entre NVM, NPM et Yarn.
- Node.JS peut être configuré avec NVM.
- NPM est le meilleur moyen d'installer tous les paquets dont vous avez besoin.
- Yarn fonctionne comme NPM, mais il est plus rapide et plus stable lors de l'installation et du référencement.
- pour votre application Node.JS.
Ce qu'ils ont en commun, c'est qu'ils sont tous utilisés par les applications Node.
Chez Bulcode, nous avons l'habitude de travailler aussi bien avec NPM qu'avec Yarn, mais le choix préféré est généralement Yarn.
S'ABONNER À NOTRE NEWSLETTER
Partager cet article :