Què és NPM?
NPM (Node Package Manager) és el gestor de paquets per a Node.js. Permet als desenvolupadors compartir i reutilitzar codi, així com gestionar les dependències dels seus projectes. NPM és una eina essencial per a qualsevol desenvolupador que treballi amb Node.js.
Característiques Principals de NPM:
- Gestió de Paquets: Instal·la, actualitza i elimina paquets de Node.js.
- Reutilització de Codi: Permet compartir codi amb altres desenvolupadors.
- Gestió de Dependències: Manté un registre de les dependències del projecte en el fitxer
package.json
. - Scripts de NPM: Permet definir scripts per automatitzar tasques comunes.
Instal·lació de NPM
NPM s'instal·la automàticament amb Node.js. Per verificar que tens NPM instal·lat, pots executar la següent comanda en la teva terminal:
Això hauria de mostrar la versió de NPM instal·lada.
Inicialitzar un Projecte amb NPM
Per començar a utilitzar NPM en un projecte, primer has de crear un fitxer package.json
. Aquest fitxer conté informació sobre el projecte i les seves dependències. Pots crear-lo manualment o utilitzar la comanda npm init
per generar-lo automàticament.
Exemple:
-
Crea una carpeta per al teu projecte:
mkdir my-node-project cd my-node-project
-
Inicialitza el projecte amb NPM:
npm init
Aquesta comanda et guiarà a través d'una sèrie de preguntes per configurar el teu
package.json
. Si vols utilitzar els valors per defecte, pots executarnpm init -y
.
Contingut del package.json
:
{ "name": "my-node-project", "version": "1.0.0", "description": "Un projecte d'exemple amb Node.js i NPM", "main": "index.js", "scripts": { "test": "echo \"Error: no test specified\" && exit 1" }, "author": "El teu Nom", "license": "ISC" }
Instal·lar Paquets amb NPM
NPM permet instal·lar paquets de dues maneres: globalment o localment.
Instal·lació Local:
Els paquets instal·lats localment només estan disponibles per al projecte en el qual s'han instal·lat. Per instal·lar un paquet localment, utilitza la següent comanda:
Exemple:
Això instal·larà el paquet express
i afegirà una entrada a la secció dependencies
del teu package.json
.
Instal·lació Global:
Els paquets instal·lats globalment estan disponibles per a tots els projectes en el teu sistema. Per instal·lar un paquet globalment, utilitza la següent comanda:
Exemple:
Això instal·larà el paquet nodemon
globalment, permetent-te utilitzar-lo en qualsevol projecte.
Scripts de NPM
Els scripts de NPM permeten definir tasques que es poden executar fàcilment des de la línia de comandes. Aquests scripts es defineixen en la secció scripts
del package.json
.
Exemple:
Per executar un script, utilitza la següent comanda:
Exemple:
Això executarà el script start
definit en el package.json
.
Exercicis Pràctics
Exercici 1: Inicialitzar un Projecte amb NPM
- Crea una nova carpeta per al teu projecte.
- Inicialitza el projecte amb NPM.
- Revisa el fitxer
package.json
generat.
Solució:
Exercici 2: Instal·lar un Paquet
- Instal·la el paquet
lodash
localment. - Revisa el fitxer
package.json
per veure les dependències actualitzades.
Solució:
Exercici 3: Definir i Executar un Script de NPM
- Afegeix un script
start
en elpackage.json
que executi un fitxerindex.js
. - Crea un fitxer
index.js
amb un simple missatge de consola. - Executa el script
start
utilitzant NPM.
Solució:
-
Edita el
package.json
per afegir el script:"scripts": { "start": "node index.js" }
-
Crea el fitxer
index.js
:console.log("Hola, món!");
-
Executa el script:
npm run start
Conclusió
En aquesta secció, hem après què és NPM, com inicialitzar un projecte, instal·lar paquets i definir scripts. Aquests conceptes són fonamentals per gestionar les dependències i automatitzar tasques en els teus projectes de Node.js. En la següent secció, explorarem com instal·lar i utilitzar paquets amb més detall.
Curs de Node.js
Mòdul 1: Introducció a Node.js
Mòdul 2: Conceptes Bàsics
Mòdul 3: Sistema de Fitxers i I/O
Mòdul 4: HTTP i Servidors Web
Mòdul 5: NPM i Gestió de Paquets
Mòdul 6: Framework Express.js
- Introducció a Express.js
- Configuració d'una Aplicació Express
- Middleware
- Routing en Express
- Gestió d'Errors
Mòdul 7: Bases de Dades i ORMs
- Introducció a les Bases de Dades
- Utilitzar MongoDB amb Mongoose
- Utilitzar Bases de Dades SQL amb Sequelize
- Operacions CRUD
Mòdul 8: Autenticació i Autorització
Mòdul 9: Proves i Depuració
- Introducció a les Proves
- Proves Unitàries amb Mocha i Chai
- Proves d'Integració
- Depuració d'Aplicacions Node.js
Mòdul 10: Temes Avançats
Mòdul 11: Desplegament i DevOps
- Variables d'Entorn
- Utilitzar PM2 per a la Gestió de Processos
- Desplegar a Heroku
- Integració i Desplegament Continu