Hướng dẫn sử dụng Node.js

Table of content
  • What is Node.js?
  • Why Learn Node.js?
  • How to Install Node.js?
  • Applications of Node.js
  • Example of Node.js Application
  • Prerequisites to Learn Node.js
  • Getting Started with Node.js
  • Node.js Jobs and Salary
  • Frequently Asked Questions on Node.js

Node.js là một môi trường chạy JavaScript mạnh mẽ, được xây dựng trên Engine JavaScript V8 của Google Chrome. Node.js là mã nguồn mở và đa nền tảng.

What is Node.js?

Node.js không phải là một ngôn ngữ lập trình như Python, Java hay C/C++. Node.js là một môi trường chạy, tương tự như máy ảo Java, chuyển đổi mã JavaScript thành mã máy. Nó được sử dụng rộng rãi bởi hàng nghìn lập trình viên trên khắp thế giới để phát triển các ứng dụng web yêu cầu I/O cao như các trang web phát video, ứng dụng một trang (single-page applications) và các ứng dụng web khác.

Với Node.js, có thể sử dụng JavaScript như một backend. Với việc JavaScript đã trở thành lựa chọn phổ biến cho phát triển frontend, việc phát triển ứng dụng xung quanh các stack MERN (MongoDB, Express, React và Node.js) và MEAN (MongoDB, Express, Angular và Node.js) ngày càng được các nhà phát triển áp dụng nhiều hơn.

Why Learn Node.js?

Node.js có thể được sử dụng để thực hiện nhiều mục đích như lập trình phía máy chủ, xây dựng API, v.v.

  • Node.js is used for server-side programming with JavaScript. Hence, you can use a single programming language (JavaScript) for both front-end and back-end development.
  • Node.js implements asynchronous execution of tasks in a single thread with async and await technique. This makes Node.js application significantly faster than multi-threaded applications.
  • Node.js is being used to build command line applications, web applications, real-time chat applications, REST APIs etc.

How to Install Node.js?

Các hệ điều hành khác nhau yêu cầu các bước khác nhau để cài đặt Node.js, vui lòng làm theo các phương pháp được cung cấp tương ứng với hệ điều hành bạn đã cài đặt.

  • Node.js Installation on Windows
  • Node.js Installation on Linux - Ubuntu

Applications of Node.js

Node.js được sử dụng để xây dựng nhiều loại ứng dụng khác nhau. Một số loại ứng dụng được liệt kê dưới đây.

  • Streaming applications: Node.js can easily handle real-time data streams, where it is required to download resources on-demand without overloading the server or the user’s local machine. Node.js can also provide quick data synchronization between the server and the client, which improves user experience by minimizing delays using the Node.js event loop.
  • Single page apps: Node.js is an excellent choice for SPAs because of its capability to efficiently handle asynchronous calls and heavy input/output(I/O) workloads. Data driven SPAs built with Express.js are fast, efficient and robust.
  • Realtime applications: Node.js is ideal for building lightweight real-time applications, like messaging apps interfaces, chatbot etc. Node.js has an event- based architecture, as a result has an excellent WebSocket support. It facilitates real-time two-way communication between the server and the client.
  • APIs: At the heart of Node.js is JavaScript. Hence, it becomes handling JSON data is easier. You can therefore build REST based APIs with Node.js.

Đây là một số trường hợp sử dụng của Node.js. Tuy nhiên, việc sử dụng nó không chỉ giới hạn ở những loại này. Các công ty ngày càng sử dụng Node.js cho nhiều ứng dụng khác nhau.

Example of Node.js Application

Để tạo một ứng dụng Hello World cơ bản trong Node.js, hãy lưu dòng JavaScript sau vào tệp hello.js.

console.log("Hello World");

Mở một terminal PowerShell (hoặc command prompt) trong thư mục chứa tệp hello.js, và nhập lệnh sau. Thông điệp "Hello World" sẽ được hiển thị trong terminal.

PS D:\nodejs> node hello.js
Hello World

Để tạo một ứng dụng web "Hello, World!" bằng Node.js, hãy lưu đoạn mã sau dưới tên hello.js:

http = require('node:http');
listener = function (request, response) {
 // Send the HTTP header
 // HTTP Status: 200 : OK
 // Content Type: text/html
 response.writeHead(200, {'Content-Type': 'text/html'});

 // Send the response body as "Hello World"
 response.end('<h2 style="text-align: center;">Hello World</h2>');
};

server = http.createServer(listener);
server.listen(3000);

// Console will print the message
console.log('Server running at http://127.0.0.1:3000/');

Chạy đoạn kịch bản trên từ dòng lệnh.

C:\nodejs> node hello.js
Server running at http://127.0.0.1:3000/

Chương trình khởi động máy chủ Node.js trên localhost và chuyển sang chế độ lắng nghe tại cổng 3000. Bây giờ hãy mở trình duyệt và nhập http://127.0.0.1:3000/ làm URL. Trình duyệt sẽ hiển thị thông điệp "Hello World" như mong muốn.

Prerequisites to Learn Node.js

Trước khi tiếp tục với hướng dẫn này, bạn nên có một hiểu biết cơ bản về JavaScript . Vì chúng ta sẽ phát triển các ứng dụng dựa trên web sử dụng Node.js, sẽ rất tốt nếu bạn có một số hiểu biết về các công nghệ web khác như HTML , CSS , AJAX , v.v.

Getting Started with Node.js

Hướng dẫn này được thiết kế cho các lập trình viên phần mềm muốn học Node.js và các khái niệm kiến trúc của nó từ cơ bản đến nâng cao. Hướng dẫn này sẽ cung cấp cho bạn sự hiểu biết đầy đủ về tất cả các thành phần cần thiết của Node.js với các ví dụ phù hợp.

Basics of Node.js

Trước khi đi sâu vào Node.js, bạn nên làm quen với các kiến thức cơ bản về Node.js như thiết lập môi trường, terminal REPL, NPM, Callbacks, Events, Objects, v.v.

Node.js Modules

Node.js Các mô-đun cung cấp một tập hợp các hàm được sử dụng để thực hiện các thao tác khác nhau theo yêu cầu. Tất cả các mô-đun quan trọng đều được liệt kê dưới đây.

Node.js Jobs and Salary

Node.js là một công cụ phổ biến cho hầu hết mọi loại dự án. Sau khi học Node.js, bạn có thể tìm được việc làm trong nhiều vị trí khác nhau.

  • Node.js Developer - Salary ranges in between ₹ 1.2 Lakhs to ₹ 12.6 Lakhs with an average annual salary of ₹ 5.7 Lakhs.
  • Node.js Backend Developer - Salary ranges in between ₹ 1.2 Lakhs to ₹ 11.0 Lakhs with an average annual salary of ₹ 4.7 Lakhs.

Frequently Asked Questions about Node.js

Node.js là một framework máy chủ mã nguồn mở và đa nền tảng. Nó hoàn toàn miễn phí để sử dụng trên tất cả các nền tảng hệ điều hành – Windows, Linux, MacOS, v.v.

Chắc chắn rồi. Node.js đang được sử dụng rộng rãi để xây dựng các ứng dụng thương mại trong lĩnh vực ứng dụng phát trực tuyến, ứng dụng đơn trang (SPA), API, v.v. Nhiều công ty hàng đầu như Twitter, Slack, Coursera, v.v. sử dụng Node.js trong các ứng dụng của họ.

Các ứng dụng Node.js có thể được triển khai trên các dịch vụ lưu trữ phổ biến như AWS, Heroku, Hostinger và nhiều hơn nữa.

Node.js runtime thực thi JavaScript trong một luồng đơn. Nó triển khai việc thực thi bất đồng bộ của nhiều tác vụ với cơ chế async/await để thực hiện các yêu cầu IO không chặn.

So với các ngôn ngữ như Java, PHP, Python, v.v., Node.js cung cấp hiệu suất tốt hơn về tốc độ thực thi. Tuy nhiên, đối với các ứng dụng lập trình cấp thấp, nó không tốt bằng C/C++.

Trình quản lý gói NPM thực sự có một số gói cho các thư viện học máy như tensorflow.js và brain.js. Tuy nhiên, Python và Ruby vẫn là lựa chọn ưa thích để phát triển các ứng dụng AI và học máy.

Node.js Articles

Bạn có thể khám phá một loạt các bài viết về Node.js tại Node.js Articles .