Giới thiệu về NodeJs
1. NodeJs là gì?
Trước khi trực tiếp trả lời câu hỏi "NodeJS là gì?", tôi sẽ giới thiệu cho bạn bối cảnh ra đời của NodeJS, điều này giúp bạn dễ hiểu được vấn đề hơn.
Chrome & V8 Javascript Engine
Ai cũng biết Chrome là một trình duyệt nổi tiếng và miễn phí của Google, phiên bản đầu tiên được phát hành vào tháng 12 năm 2008. Trong đó V8 JavaScript Engine (Bộ máy Javascript) là một chương trình viết trên C++, mã nguồn mở, được sử dụng trong Google Chrome để phân tích và thực thi mã Javascript với hiệu xuất cao. Nó phân tích (parse) cú pháp Javascript và thông dịch (Interpret) thành mã máy tính để thực thi.
Chú ý: Các trình duyệt khác Chrome có thể sử dụng Javascript Engine khác.
Browser Javascript Engine Chrome V8 JS Engine Firefox SpiderMonkey IE, Edge Chakra
NodeJS
Bạn có thể sử dụng "Cú pháp của Javascript" để viết một đoạn mã kết nối vào cơ sở dữ liệu nào đó. V8 JS Engine sẽ phân tích mã Javascript của bạn và thông dịch nó thành mã máy tính để thực thi. Tất nhiên, đoạn mã như vậy không phải để thực thi ở phía Client (trình duyệt), nó được sử dụng ở phía Server (Server side). Như vậy một khả năng đã được mở ra, bạn có thể sử dụng "Cú pháp Javascript" để viết ứng dụng web tại phía Server thay vì sử dụng PHP hoặc Java.
** Javascript code **
const mysql = require('mysql');
const connection = mysql.createConnection({
host: 'localhost',
user: 'user',
password: 'password',
database: 'database name'
});
connection.connect((err) => {
if (err) throw err;
console.log('Connected!');
});
Và NodeJS ra đời, V8 Javascript Engine là một trong các thành phần của NodeJS. Dưới đây là hình ảnh kiến trúc của NodeJS:
Nói một cách ngắn gọn NodeJS có thể thay thế cho PHP, Java để xây dựng ứng dụng Web tại phía Server. Thay vì viết mã bằng PHP, Java bạn sử dụng cú pháp của Javascript.
Vậy NodeJS là gì?NodeJS là một môi trường chạy JavaScript (JavaScript Runtime Environment) bên ngoài trình duyệt. NodeJS cũng bao gồm các thành phần, thư viện khác để nó có thể hoạt động như một Web Application Server.Chú ý quan trọng: NodeJS không phải là một ngôn ngữ mở rộng của Javascript.
Các hướng dẫn NodeJS
- Giới thiệu về NodeJs
- NPM là gì?
- Hướng dẫn NodeJS cho người mới bắt đầu
- Cài đặt trình soạn thảo Atom
- Cài đặt NodeJS trên Windows
- Hướng dẫn và ví dụ NodeJS Module
- Khái niệm Callback trong NodeJS
- Tạo một HTTP Server đơn giản với NodeJS
- Tìm hiểu về Event Loop trong NodeJS
- Hướng dẫn và ví dụ NodeJS EventEmitter
- Hướng dẫn và ví dụ NodeJS Buffer
- Kết nối cơ sở dữ liệu MySQL trong NodeJS
Show More