Một Cái Nhìn Tổng Quan Nhất Về Node Js Là Gì, Dùng Để Làm Gì

Là lập trình viên, chúng ta chắc hẳn biết Javascript là một ngôn ngữ client, nhưng kể từ khi NodeJS ra đời, khái niệm đã đó đã thay đổi. Bài viết sẽ giới thiệu về Node.js và một Node.js framework khá phổ biến hiện nay là Express. Chúng ta sẽ tạo ứng dụng cơ bản bằng framework Express

*

NodeJS là gì ?

NodeJS là một mã nguồn được xây dựng dựa trên nền tảng Javascript V8 Engine. Nó được xây dựng để chạy trên server.

Đang xem: Node js là gì

Javascript là một ngôn ngữ hướng sự kiện, do đó bất cứ điều gì xảy ra trên server đều tạo ra một sự kiện non-blocking, do vậy nên 1 website sử dụng NodeJS có thể đáp ứng được việc truy cập cùng lúc một lượng user cực kì lớn.

Vậy NodeJS thích hợp để làm gì. Với các đặc trưng của mình thì NodeJS thích hợp để xây dựng các ứng dụng thời gian thực, ví dụ như hệ thống chat online hoặc hệ thông thông báo…

Và cũng như nhiều ngôn ngữ chạy phía server khác, NodeJS cũng bắt đầu có một cộng đồng phát triển rất lớn, nhiều framework sử dụng core NodeJS ra đời, một trong số các framework phổ biến nhất hiện nay là Express. Chúng ta sẽ cùng tìm hiểu về framework này phía dưới đây.

Lợi ích của framework Express

Framework giúp cho việc phát triển ứng dụng được rút ngắn đi rất nhiều. Cũng như các framework dựa trên những ngôn ngữ khác như Rails (Ruby); Django (Python); Laravel, CakePHP (PHP)… Express được xây dựng dựa trên NodeJs. Vậy nó có ưu điểm gì để ta lựa chọn cho việc phát triển ứng dụng.Express hỗ trợ việc phát triển ứng dụng theo mô hình MVC, mô hình phổ biến cho việc lập trình web hiện nay.Cho phép định nghĩa Middleware hỗ trợ cho việc tổ chức và tái sử dụng code.Định nghĩa routes và các request method đến server một cách dễ dàng.Hỗ trợ REST API.Và còn rất nhiều thứ mà framework này hỗ trợ, còn bây giờ hãy thử cài đặt và xây dựng một ứng dụng đơn giản nhé.

Xem thêm: Bạn Đã Biết 23/9 Là Cung Gì, Người Sinh 23 Tháng 9 Là Cung Hoàng Đạo Gì

Cài đặt NodeJS và framework Express

Bài viết sẽ hướng dẫn cài đặt trên môi trường linux (ubuntu).

Cài đặt NodeJS

apt-get install nodejsCài đặt NPM:apt-get install npmCài đặt xong 2 gói trên, gõ lệnh

nodejs|npm -vđể kiểm tra version của các gói tương ứng. Tiếp theo, tạo thư mục expressjs và khởi tạo project

mkdir /var/www/expressjscd /var/www/expressjsnpm initĐiền các thông tin tương ứng (name, version, description …) mà trình cài đặt yêu cầu hoặc enter để bỏ qua nếu bạn thấy nó đã phù hợp, cuối cùng chọn yes để kết thúc. Thực hiện tiếp các lệnhnpm install express –savenpm install expressnpm install express-generator -gcd /var/www/express expressjscd expressjsnpm installVậy là xong phần cài đặt, giờ hãy thử chạy lệnh sau

nodejs /var/www/expressjs/bin/wwwvà mở trình duyệt truy cậphttp://localhost:3000/bạn sẽ thấy

ExpressWelcome to ExpressVậy là chúng ta đã hoàn thành cài đặt Express framework, giờ hãy xem qua các thư mục một chút.

Xem thêm: Tư Duy 5W1H Là Gì ? Ứng Dụng Và Ý Nghĩa Của Phương Pháp Tư Duy 5W1H

bin: Thư mục này chứa các file khởi tạo ứng dụng của bạn, mặc định khi cài đặt sẽ chứa file www, là file mà các bạn chạy lệnh phía trên để khởi tạo ứng dụng.node_modules: chứa core framework và các thư viện trên nền NodeJSpublic: chứa các file css, javascript và ảnh.routes: định nghĩa url và method.views: định nghĩa các màn hình.app.js: là một file quan trọng, có nhiệm vụ kết nối tất cả mọi thứ để ứng dụng có thể chạy một cách chính xác.package.json: file định nghĩa các module.

Xây dựng ứng dụng chat đơn giản

Để xây dựng ứng dụng chat chúng ta cần cài thêmsocket.io, các bạn chạy lệnh phía dưới

cd /var/www/expressjsnpm install –save socket.ionpm installtrong thư mục expressjs tạo file chat.js và chat.html, nội dung 2 file như sau

chat.jsvar app = require(“express”)();var http = require(“http”).Server(app);var io = require(“socket.io”)(http);app.get(“/”, function(req, res){ res.sendFile(__dirname + “/chat.html”);});io.on(“connection”, function(socket){ socket.on(“chat message”, function(msg){ io.emit(“chat message”, msg); });});http.listen(3000, function(){ console.log(“listening on *:3000”);});chat.html Socket.IO chat Send

Xem thêm bài viết thuộc chuyên mục: tin tổng hợp