Dependențe fac posibilă reutilizarea eficientă a codului. Asigurați-vă că știți cum să le gestionați în proiectele dvs. Node.
O dependență este o bucată de cod – o bibliotecă, un modul sau un pachet – de care un proiect o necesită pentru a funcționa corect.
În Node.js, dependențele și devDependencies sunt categorii de pachete pe care le puteți defini în fișierul package.json pentru a gestiona dependențele proiectului. Explorează diferențele dintre ele și învață cum să le folosești în proiectele tale.
Dependențe obișnuite într-un proiect npm
Dependențe obișnuite - sau, pur și simplu, dependențe - sunt pachete pe care aplicația dvs. necesită pentru a funcționa așa cum este prevăzut în timpul de execuție și în mediile de producție.
Dependențele pot include:
- Biblioteci externe care oferă funcționalități predefinite, cum ar fi lodash.
- Cadre care oferă o fundație sau o structură pentru aplicații de construcție, cum ar fi Express sau React.
- Drivere pentru baze de date, cum ar fi MongoDB sau sqlite3.
- Pachete care ajută la sarcinile legate de rețea, cum ar fi Axios sau Socket.io.
De exemplu, dacă construiți un API-ul CRUD cu Express.js, expres va fi una dintre dependențele dvs. deoarece serverul dvs. are nevoie de el pentru a funcționa.
Pentru a instala dependențele de rulare, puteți utiliza un manager de pachete precum npm, Managerul de pachete Node, sau Fire.
Dependențe există sub obiectul dependențe dintr-un fișier package.json. Obiectul dependențe stochează numele și versiunile pachetelor.
Pentru a instala un pachet ca dependență folosind NPM, rulați comanda de mai jos:
instalare npm
Comanda de mai sus instalează pachetul și îl înregistrează ca o dependență a proiectului tău în pachet.json:
// package.json
"dependente": {
"numele pachetului": „^ versiune-pachet”,
}
Când clonați un proiect dintr-un depozit bazat pe web, puteți instala dependențele rulând comanda de mai jos:
instalare npm
Când rulați comanda de mai sus, managerul dvs. de pachete citește pachet.json fișier și instalează dependențele și devDependențele specificate din registrul pachetelor.
Dependențe de dezvoltare și cum să le folosiți
Dependențe de dezvoltare – sau devDepenendencies – sunt pachete de care aplicația dvs. are nevoie doar în timpul procesului de dezvoltare. Cu alte cuvinte, nu sunt necesare în producție.
Dependențe de dezvoltare pot include:
- Cadre de testare, cum ar fi Jest sau Mocha.
- Alergători de testare, cum ar fi Chai.
- Linters și formatatoare, cum ar fi Eslint.
- Instrumente de documentare, cum ar fi Swagger.
Un exemplu comun de devDepenedency este pachetul Nodemon, care vă repornește serverul când detectează modificări în scripturile dvs.
Puteți defini devDependencies sub dependențe de dezvoltare obiect în a pachet.json fişier. Acest obiect stochează numele și versiunile pachetelor.
Puteți instala un pachet ca devDependency rulând această comandă:
instalare npm --save-dev
Alternativ, puteți instala un pachet ca devDependency rulând această comandă:
npm install -D
Comanda de mai sus instalează și înregistrează pachetul în dvs pachet.json fișier, așa:
// package.json
„Dependențe de dezvoltare”: {
"numele pachetului": „^ versiune-pachet”
}
Când clonați un proiect dintr-un depozit bazat pe web, rulând fișierul instalare npm comanda va instala, de asemenea, devDependencies.
Cu toate acestea, rulați comanda cu producție flag instalează numai dependențele.
De exemplu:
npm install --production
Când rulați comanda de mai sus, managerul dvs. de pachete citește pachet.json fișier și instalează dependențele aplicației dvs. din registrul pachetelor.
Alternativ, puteți seta NODE_ENV variabilă la „producție” pentru a obține aceleași rezultate.
Alte tipuri de dependențe
Pe lângă dependențe și devDependencies, Node.js clasifică și pachetele ca peerDepenecies și Opțional Dependențe.
Dependențe de la egal la egal
Dependențe peer sunt dependențe pe care un pachet le folosește atunci când se așteaptă ca o anumită versiune sau o versiune compatibilă a altui pachet să fie prezentă în aplicația care o folosește.
Scopul dependențelor de la egal la egal este de a se asigura că un pachet funcționează corect cu dependențele sale și evită conflictele sau problemele de compatibilitate.
Pentru versiunile npm mai mici decât v7, dependențele peer nu sunt instalate automat. Mai degrabă, codul care include pachetul trebuie să îl includă ca dependență. Dacă pachetul nu îl include, npm va lansa un avertisment.
Ele există sub peer Dependențe obiect în fișierul package.json:
"dependențe de la egal la egal": {
"pachet": „^versiune”
}
Dependențe opționale
Dependențe opționale sunt pachete care nu sunt esențiale pentru funcționalitatea de bază a unui proiect, dar pot îmbunătăți capacitățile acestuia dacă sunt disponibile.
Deoarece dependențele opționale nu sunt necesare pentru ca proiectul să funcționeze corect, le puteți omite în timpul instalării.
Rularea comenzii de mai jos va omite dependențele opționale în timpul procesului de instalare:
npm install --omit=opțional
Ele există sub Opțional Dependențe obiect în fișierul package.json:
„dependențe opționale”: {
"pachet": „^versiune”
}
Categorii ușurează gestionarea dependențelor
Înțelegerea, gestionarea și clasificarea eficientă a dependențelor ajută la asigurarea unei separări clare între pachetele necesare producției și cele necesare numai în timpul dezvoltării.
Această distincție ajută la gestionarea eficientă a dependenței, o grupare adecvată și o implementare simplificată a proiectului dumneavoastră.