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.
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.
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.
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 đượ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.
Đâ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.
Để 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.
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.
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.
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 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 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 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.
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 .