NPM là gì? Tất cả những thông tin cần biết về Node Package Manager
19/10/2023
Với những dev được làm việc nhiều với javascript, chắc hẳn các bạn cũng đã từng dùng lệnh npm install, npm update, npm install bootstrap … Bài viết “NPM là gì? Tất cả những thông tin cần biết về NPM” sẽ giúp bạn có cái nhìn tổng quan về các công cụ quản lý thư viện lập trình NPM.
Mục lục
Mục lục
1. NPM là gì?
NPM – hay là “Node Package Manager” – là một công cụ tạo và quản lý các thư viện lập trình Javascript cho Node.js. Trong cộng đồng Javascript, các lập trình viên chia sẻ hàng trăm nghìn các thư viện với các đoạn code đã thực hiện sẵn một chức năng nào đó. Nó giúp cho các dự án mới tránh phải viết lại các thành phần cơ bản, các thư viện lập trình hay thậm chí cả các framework.
Công cụ bao gồm hai phần chính:
CLI (giao diện dòng lệnh) để xuất bản và tải xuống các gói.
Kho lưu trữ trực tuyến lưu trữ các gói JavaScript.
2. Cách hoạt động của NPM
NPM hoạt động dựa trên 2 vai trò sau:
NPM là repository được sử dụng với mục đích publish project Node.js nguồn mở. NPM chính là nền tảng trực tuyến cho phép người dùng có thể thực hiện thao tác publish hoặc chia sẻ một số công cụ khác được viết bằng JavaScript.
Đây là công cụ thuộc dạng dòng lệnh hỗ trợ người dùng tương tác với nền tảng trực tuyến như máy chủ hoặc trình duyệt. NPM cũng 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, quản lý do máy chủ thực hiện quản lý phiên bản, quản lý depency cần thiết để chạy dự án.
Lưu ý về cách thức hoạt động của NPM:
Bắt buộc phải cài Node.js thì mới có thể sử dụng NPM bởi chúng được đóng gói chung.
Nếu có tiện ích dòng lệnh của NPM thì Node.js có thể hoạt động hiệu quả hơn nhiều lần.
Dự án của bạn bắt cuộc phải chứa tệp tên là package.json để có thể sử dụng được các gói. Bạn có thể tìm thấy được bên trong những gói này những metadata cụ thể nhất dành cho project.
Metadata sẽ giúp người dùng xác định được project: Tên gọi của dự án, phiên bản phát hành đầu tiên, phần mô tả, mục điểm vào, kiểm tra tất cả các lệnh, Git respiratory, từ khoá, giấy phép, các điểm phụ thuộc và Dev Dependencies.
3. Công dụng của NPM
NPM đơn giản hóa quản lý dự án đáng kể. Đây là công cụ giúp bạn quản lý dễ dàng hơn rất nhiều. Mọi thư viện đều sẵn có trên NPM. Chỉ cần một dòng lệnh để tải về và dễ dàng bao gồm chúng vào dự án của bạn.
Mỗi đoạn mã này có thể phụ thuộc vào nhiều nguồn mở khác nhau. Chúng may mắn khi có các công cụ quản lý thư viện, vì nếu không, việc quản lý những thư viện này sẽ đòi hỏi rất nhiều công sức.
Cộng đồng sử dụng NPM rộng lớn, với hàng nghìn thư viện được phát hành. Nó hỗ trợ JavaScript ES6, React, Express, Grunt, Duo và nhiều công nghệ khác. Gần đây, đã xuất hiện công cụ Yarn, một phiên bản tương tự NPM, được phát triển bởi Facebook với nhiều tính năng xuất sắc, có thể thay thế NPM trong tương lai.
Nếu bạn đã lập trình bằng Php, bạn sẽ biết Composer là công cụ quản lý thư viện cho ngôn ngữ đó, tương tự như NPM là công cụ quản lý thư viện cho JavaScript.
4. Phân loại các dạng Package mà NPM có thể cài đặt
Package được chia ra làm 2 loại, đó là: Simple dependencies và Development dependencies.
Simple dependencies là những package bắt buộc phải có trong quá trình chạy sản phẩm, kiểu như một thư viện cung cấp các hàm mà code của bạn cần. Khi cài đặt Simple dependencies, Npm sẽ tự động cài đặt tất cả các dependencies cần thiết. Đó cũng chính là lí do vì sao khi bạn cài đặt 1 package và vào folder node_modules sẽ thấy cả đống các package khác mà bạn không hề cài đặt
Development dependencies là những package bắt buộc khi phát triển cũng như phát hành sản phẩm. Kiểu như các trình biên dịch giúp biên dịch đoạn code của bạn về javascript, rồi các framework phục vụ cho việc kiểm thử,… Khi cài đặt Development Dependencies, sẽ chỉ cài đặt các dependencies mà cần thiết.
5. Cài đặt PNM
Như đã đề cập ở trên, khi bạn cài đặt Node.js thì NPM cũng sẽ được kèm theo. Bạn có thể xem cách cài đặt Node.js ở bài viết này.
Đây là một phần mềm cài đặt trên máy tính nên bạn có thể sử dụng nó để cài đặt các thư viện Javascript từ trên Internet. Bạn chỉ cần mở cửa sổ Terminal (hoặc CMD) và thực thi các lệnh.
Bạn có thể tìm hiểu thêm về dòng lệnh được sử dụng với NPM.
6. Những câu lệnh của NPM
Dưới đây là một số câu lệnh cơ bản khi làm việc với NPM hoặc Node.js:
Cài đặt tất cả các packages được liệt kê trong file package.json
npm install
Cập nhật production packages
npm update
Cập nhật dev packages
npm update -dev
Cập nhật global packages
npm update -g
Cập nhật riêng lẻ từng package theo tên
npm update package-name
Liệt kê tất cả packages
npm ls npm list
Kiểm tra outdated packages
npm outdated
Chạy các câu lệnh cài đặt trong package.json
npm run script-cmd-name
Câu lệnh sẵn mà NPM tự hiểu
npm start npm test
Liệt kê tất cả cấu hình cho NPM
npm config ls -l
Lời kết
Tổng kết lại, NPM là một công cụ giúp chúng ta dễ dành quản lý các thư viện Javascript một cách đơn giản hơn, tiện dụng, dễ dàng hơn, từ đó tiết kiệm tốt đa thời gian cho các dev. Hi vọng Tothost mong các bạn có thể hiểu rõ hơn về nó, giải đáp cho câu hỏi là gì và hoạt động như thế nào và cách sử dụng công cụ này hiệu quả nhất, có thể tối ưu hóa hiệu suất làm việc của mình. Chúc các bạn thành công!
Bất kể bạn đang vận hành một website doanh nghiệp, một hệ thống app nội bộ hay đang cắm tool MMO, rủi ro mất dữ liệu luôn hiện hữu. Máy chủ có thể bị tấn công Ransomware, lỗi cấu hình phần mềm, hoặc đơn giản nhất là... bạn lỡ tay gõ nhầm lệnh xóa. Việc sao lưu (Backup) dữ liệu định kỳ là chiếc phao cứu sinh duy nhất. Bài viết này sẽ hướng dẫn bạn chi tiết từ A-Z cách Backup và Restore dữ liệu trên cả VPS Linux và VPS Windows, cùng những lưu ý "sống còn" dành riêng cho khách hàng sử dụng dịch vụ tại TotHost.
Trong bối cảnh không gian địa chỉ IPv4 ngày càng cạn kiệt, làm thế nào để hàng tỷ thiết bị trên toàn cầu có thể kết nối Internet một cách thông suốt và an toàn? Câu trả lời nằm ở NAT (Network Address Translation) – một công nghệ định tuyến "xương sống" không thể thiếu trong bất kỳ hệ thống mạng máy tính hay hạ tầng máy chủ nào hiện nay. Vậy thực chất NAT là gì? Công nghệ này vận hành ra sao và bao gồm những chuẩn phân loại nào? Bài viết dưới đây sẽ giúp bạn giải mã chi tiết toàn bộ các khái niệm, nhiệm vụ cốt lõi và những thuật ngữ kỹ thuật quan trọng nhất liên quan đến NAT.
Hiện nay, các dịch vụ điện toán đám mây dần trở nên phổ biến với mọi Doanh Nghiệp. Chính vì vậy, ngày càng xuất hiện nhiều lựa chọn đa dạng hơn như: Public Cloud, Private Cloud, Hybrid Cloud. Trong nội dung bài viết này, Tothost sẽ giải thích chi tiết Hybrid Cloud là gì cùng những lợi ích khi sử dụng mô hình này. Hãy cùng theo dõi nhé!
CloudFlare không còn là cái tên xa lạ đối với các quản trị viên website. Nó giúp cho website tăng tốc độ truy cập, mang đến sự bảo mật cao, và tiết kiệm băng thông cho máy chủ. Vậy, thực chất CloudFlare là gì? Thiết lập và cài đặt CloudFlare như thế nào?
Cho dù bạn có biết đến các thuật ngữ như Cloud, Cloud storage, Cloud computing hay không. Thì mỗi ngày, mỗi giờ, bạn vẫn đang tiếp xúc với chúng một cách vô thức. Những khái niệm tưởng chừng xa lạ nhưng lại gắn liền với đời sống thường nhật của bạn. Vậy, chính xác Cloud storage là gì? Chúng vận hành ra sao, ảnh hưởng thế nào đến cuộc sống của chúng ta? Bạn hãy cùng TotHost tìm hiểu qua bài viết sau nhé!
Cloud Server là một sản phẩm được tạo ra dựa trên nền tảng công nghệ điện toán đám mây. Cụ thể Cloud Server là gì, được ứng dụng thế nào trong các doanh nghiệp, và đem lại những lợi ích gì? Bạn đọc hãy cùng TotHost tìm hiểu chi tiết về Cloud Server qua bài viết sau!