NPM là một công cụ hữu ích cho việc quản lý thư viện. NPM là một thuật ngữ mà những lập trình viên, những người đã và đang tìm hiểu về công nghệ thông tin không thể không biết. Do đó, bài viết dưới đây Vietnix sẽ giải đáp cho bạn NPM là gì? Những công dụng chính của NPM, cách thức NPM hoạt động cũng như cách cài đặt NPM dễ dàng. Hãy theo dõi bài viết nhé!
NPM là gì?
NPM (Node Package Manager) là một công cụ không thể thiếu trong thư viện lập trình Node.js và JavaScript. Hoạt động như kho lưu trữ khổng lồ, NPM là môi trường để các lập trình viên trên toàn cầu chia sẻ hàng trăm nghìn thư viện và module mã nguồn mở. Nhờ NPM, bạn có thể dễ dàng tìm kiếm, cài đặt và quản lý các dependency cho dự án của mình, giúp tiết kiệm thời gian và công sức phát triển.
![NPM là gì? Tầm quan trọng của NPM đối với việc quản lý thư viện 6 NPM là công cụ quan trọng trong thư viện Node.JS và Javascript](https://static-xf1.vietnix.vn/wp-content/uploads/2024/07/npm-la-gi.png)
Bên cạnh đó, Node Package Manager còn là một cộng đồng sôi động, để các developer cùng nhau đóng góp, học hỏi và xây dựng nên một hệ sinh thái phần mềm phong phú. Thông qua công cụ này, việc tái sử dụng mã nguồn trở nên dễ dàng hơn bao giờ hết, giúp tăng tốc quá trình phát triển và nâng cao chất lượng sản phẩm.
![NPM là gì? Tầm quan trọng của NPM đối với việc quản lý thư viện 7 npm la gi 1](https://static-xf1.vietnix.vn/wp-content/uploads/2022/07/npm-la-gi-1-1024x546.webp)
Công dụng của NPM là gì?
Sau đây là một số công dụng của NPM:
- Node package manager sẽ giúp cho công việc quản lý của bạn trở nên đơn giản hơn rất nhiều. Ngày nay, đa số các thư viện đều đã có sẵn trên NPM. Cho nên, bạn chỉ cần chạy một dòng lệnh để tải về và việc include chúng lại sẽ trở nên dễ dàng hơn.
- Khi sử dụng công cụ NPM người quản lý thư viện không bị mất nhiều thời gian và công sức để thực hiện được mọi việc. Bởi vì mỗi đoạn code được sử dụng sẽ phụ thuộc nhiều mã nguồn mở khác nhau.
Cách thức hoạt động của NPM là gì?
NPM hoạt động dựa trên 2 vai trò chủ yếu sau đây:
- Thứ nhất, NPM là repository và đang được dùng với mục đích publish project Node.js nguồn mở. Có nghĩa là NPM là nền tảng trực tuyến cho phép mọi người dùng có thể thực hiện thao tác publish hoặc là chia sẻ một số công cụ khác được viết bằng JavaScript.
- Thứ hai, NPM là công cụ thuộc dạng dòng lệnh. NPM có thể hỗ trợ cho việc tương tác với những nền tảng trực tuyến (máy chủ, trình duyệt). Ngoài ra, NPM còn là tiện ích hỗ trợ cho việc cài đặt hoặc gỡ bỏ cài đặt gói, thực hiện quản lý các phiên bản, thậm chí là quản lý do máy chủ. NPM có thể quản lý dependency cần thiết cho việc chạy dự án.
![NPM là gì? Tầm quan trọng của NPM đối với việc quản lý thư viện 8 Cách thức hoạt động của NPM là gì?](https://static-xf1.vietnix.vn/wp-content/uploads/2022/07/npm-hoat-dong-nhu-the-nao.webp)
Nếu như bạn đã từng thực hiện code PHP thì sẽ hiểu rằng Composer là một trong những công cụ quản lý thư viện tương tự như NPM và là một trong những công cụ dùng để quản lý thư viện JavaScript.
Một số lưu ý về cách thức hoạt động của NPM:
- Bạn bắt buộc phải cài Node.js thì mới có thể sử dụng được NPM.
- Nếu có tiện ích của dòng lệnh NPM thì Node.js có thể hoạt động một cách chuẩn xác hơn rất nhiều lần.
- Dự án bạn đang thực hiện cần phải có chứa file có tên là package.json thì bạn mới có thể sử dụng được các gói. Ở bên trong gói này bạn có thể tìm được metadata cụ thể cho project.
Các Metadata sau đây sẽ giúp cho người dùng xác định được project: Tên của dự án, phiên bản ban đầu, mô tả, điểm vào, kiểm tra các lệnh, git respiratory, từ khóa, giấy phép, những phụ thuộc, dev Dependencies.
Hướng dẫn cài đặt NPM trên Windows
NPM được cài đặt với Node.js, Điều này có nghĩa là bạn phải cài đặt Node.js để cài đặt npm trên máy tính của mình. Tải xuống Node.js từ trang web chính thức của Node.js: https://nodejs.org
![NPM là gì? Tầm quan trọng của NPM đối với việc quản lý thư viện 9 Cài Node.js chính là đã cài đặt NPM](https://static-xf1.vietnix.vn/wp-content/uploads/2024/07/tai-nodejs.webp)
Khi bạn tải NodeJS về máy thì đã có sẵn NPM rồi. Tuy nhiên,để kiểm tra xem trên hệ thống của bạn NPM đã được cài đặt chưa thì bạn sẽ dụng lệnh NPM-v. Trong trường hợp có một phiên bản hiện ra thì có nghĩa là hệ thống của bạn đã được cài đặt NPM.
Bạn có thể sử dụng NPM để cài đặt các thư viện Javascript từ Internet. Bởi lẽ NPM là một phần mềm cài đặt trên máy tính. Nếu bạn muốn cài đặt một thư viện nào đó, bạn chỉ cần mở cửa sổ Terminal (hoặc CMD); và thực hiện lệnh dưới đây:
npm install package-name
Ví dụ: Bạn muốn tải Vuejs về để sử dụng thì bạn sẽ dùng lệnh:
npm install vue
Hoặc khi muốn sử dụng Vue.js bạn chỉ cần sử dụng lệnh require():
var Vue = require(‘vue’);
Và hơn hết, các package thư viện đưa vào project của bạn sẽ liên tục được update mới. Bạn chỉ cần thực hiện lệnh npm update để thực hiện cập nhật tất cả các gói liên quan. Trong trường hợp bạn chỉ muốn cập nhật một gói nào đó cụ thể, thì bạn có thể sử dụng cú pháp: npm update package_name
Nếu bạn muốn thực hiện cập nhật cho các gói được cài đặt global; bạn chỉ cần dùng các câu lệnh trên và flag -g để thực hiện.
Việc sử dụng NPM trên VPS là một phương pháp phổ biến để quản lý ứng dụng Node.js trên môi trường ảo hóa. Với VPS, bạn có thể thuê tài nguyên của một máy chủ và cài đặt môi trường chạy Node.js cùng với NPM trên VPS. Điều này cho phép bạn quản lý ứng dụng dễ dàng và hiệu quả hơn.
NPM trên VPS không chỉ giúp quản lý ứng dụng Node.js hiệu quả mà còn mở ra nhiều khả năng nâng cao hiệu suất và tùy chỉnh môi trường phát triển. Để tìm hiểu thêm về các giải pháp VPS tối ưu cho dự án của bạn, hãy khám phá ngay VPS Cao Cấp của Vietnix.
Cài đặt global và cài đặt local như thế nào?
Cùng Vietnix tìm hiểu về hai loại cài đặt này ngay sau đây:
Có hai cách để cài đặt một gói bằng NPM:
- Cài đặt local: NPM sẽ tạo thư mục
node_modules
trong dự án của bạn (nếu chưa có) và lưu trữ code của gói cần cài đặt. Gói này chỉ hiện diện trong thư mục của dự án hiện tại và có thể được sử dụng thông qua lệnhrequire()
. - Cài đặt global: NPM sẽ lưu trữ code trong các thư mục hệ thống cố định trên máy tính. Gói này chỉ có thể được sử dụng thông qua các hàm CLI (Command Line Interface), chẳng hạn như gulp.
Mặc định, khi cài đặt bằng NPM, các gói sẽ được cài đặt trong dự án của bạn. Trường hợp không còn nhu cầu sử dụng, bạn có thể gỡ cài đặt như sau:
- Cài đặt local:
npm uninstall <tên-gói>
- Cài đặt glocal:
npm uninstall -g <tên-gói>
Các gói thư viện trong dự án của bạn có thể liên tục có bản cập nhật mới. Để cập nhật tất cả các gói, bạn có thể sử dụng lệnh NPM update. Nếu bạn chỉ muốn cập nhật một gói cụ thể, hãy nhập cú pháp sau:
- Cài đặt local:
npm update <tên-gói>
- Cài đặt global:
npm update -g
Quản lý cài đặt gói thông qua Package.json
Package.json có nghĩa là gì? Việc quản lý cài đặt gói thông qua package.json sẽ diễn ra như thế nào? Vietnix sẽ giúp bạn giải đáp nhé!
Tất cả các pakage npm được định nghĩa trong các tệp được gọi là package.json. Nội dung của package.json phải được viết bằng JSON.
Ít nhất phải có hai trường trong definition file: name và version
{ "name" : "foo", "version" : "1.2.3", "description" : "A package for fooing things", "main" : "foo.js", "keywords" : ["foo", "fool", "foolish"], "author" : "John Doe", "licence" : "ISC" }
Package.json chính là các file nằm trong thư mục gốc của project và file này có chứa các nội dung sau đây:
- Package.json chứa những gói thư viện lập trình mà project đã sử dụng qua.
- Có thể xác định các phiên bản chính xác nhất của một số gói thư viện lập trình đã sử dụng khác.
- Chia sẻ dễ dàng những gói công việc mà bạn đã sử dụng với một số lập trình viên nằm trong giới hạn toàn cầu thông qua NPM.
- Các file package.json mẫu đều có thể tạo ra được từ các lệnh npm init –yes.
Ví dụ một số các thuộc tính phổ biến trong package.json:
- name: Có nghĩa là tên của gói thư viện.
- version: Có nghĩa là các phiên bản gói.
- description: Có nghĩa là đề cập đến phần mô tả của gói thư viện.
- homepage: Có nghĩa là trang chủ của gói.
- author: Có nghĩa là tác giả.
- contributors: Có nghĩa là tên gọi của người đóng góp cho package.
- dependencies: Có nghĩa là danh sách các gói phụ thuộc; và có thể tự động cài theo.
- repository: Là các loại repository và url của package.
- main: Có nghĩa là index.js.
- keywords: Có nghĩa là các từ khóa.
![NPM là gì? Tầm quan trọng của NPM đối với việc quản lý thư viện 10 quan ly cai dat goi npm 1](https://static-xf1.vietnix.vn/wp-content/uploads/2022/07/quan-ly-cai-dat-goi-npm-1-1024x512.webp)
Quản lý Dependencies
npm có thể quản lý các phần dependencies. npm có thể (trong một dòng lệnh) cài đặt tất cả các phần dependencies của một dự án. Dependencies cũng được định nghĩa trong package.json .
Chia sẻ phần mềm của bạn
Nếu bạn muốn chia sẻ phần mềm của riêng mình trong sổ đăng ký npm , bạn có thể đăng nhập tại: https://www.npmjs.com
Xuất bản một package
Bạn có thể xuất bản bất kỳ thư mục nào từ máy tính của mình miễn là thư mục đó có tệp package.json.
Kiểm tra xem npm đã được cài đặt chưa:
C:\>npm
Kiểm tra xem bạn đã đăng nhập chưa:
C:\>npm whoami
Nếu chưa thì bạn có thể đăng nhập bằng cách.
C:\>npm login Username: <your username> Password: <your password>
Điều hướng đến dự án của bạn và xuất bản dự án của bạn:
C:\Users\myuser>cd myproject C:\Users\myuser\myproject>npm publish
Câu hỏi thường gặp
NPM được sử dụng để làm gì?
NPM là trình quản lý gói cho nền tảng JavaScript Node. Nó đặt các mô-đun vào vị trí để nút có thể tìm thấy chúng và quản lý các xung đột phụ thuộc một cách thông minh.
NPM có cấu hình cực cao để hỗ trợ nhiều trường hợp sử dụng. Thông thường, nó được sử dụng để xuất bản, khám phá, cài đặt và phát triển các node program.
NPM trong Node.js là gì?
NPM là một trình quản lý package cho Node.js, hoặc modules.
www.npmjs.com lưu trữ hàng ngàn package miễn phí để tải xuống và sử dụng.
Chương trình NPM được cài đặt trên máy tính của bạn khi bạn cài đặt Node.js.
Pnpm là gì?
Pnpm (performant npm) là một trình quản lý gói cho Node.js, được thiết kế để cải thiện tốc độ và hiệu quả quản lý các thư viện và khung công tác trong các dự án Node.js. pnpm hoạt động bằng cách lưu trữ một bản sao duy nhất của mỗi gói trong một bộ nhớ cache chung, thay vì sao chép các gói vào từng dự án như npm. Điều này giúp tiết kiệm đáng kể dung lượng ổ đĩa và tăng tốc độ cài đặt.
Lời kết
Chúng ta vừa tìm hiểu chi tiết NPM là gì, vai trò quan trọng của NPM trong phát triển ứng dụng JavaScript, và các cách thức hoạt động hiệu quả. Hy vọng kiến thức này sẽ giúp bạn sử dụng NPM một cách thành thạo, nâng cao năng suất làm việc và đóng góp vào thành công của dự án.