Wiki

Node.js

Node.js
Thiết kế bởi Ryan Lienhart Dahl
Phát triển bởi Node.js Developers
Phiên bản ổn định 10.15.3
/ 5 tháng 3, 2019 (2019-03-05)
Bản xem thử 11.11.0
/ 6 tháng 3, 2019 (2019-03-06)
Repository
  • github.com/nodejs/node

Viết bằng C++, JavaScript
Hệ điều hành Mac OS X, Linux, Solaris, FreeBSD, OpenBSD, Windows (older versions require Cygwin), webOS
Thể loại Event-driven networking
Giấy phép MIT License
Website nodejs.org
Trạng thái Active

Node.js là một hệ thống phần mềm được thiết kế để viết các ứng dụng internet có khả năng mở rộng, đặc biệt là máy chủ web. Chương trình được viết bằng JavaScript, sử dụng kỹ thuật điều khiển theo sự kiện, nhập/xuất không đồng bộ để tối thiểu tổng chi phí và tối đa khả năng mở rộng. Node.js bao gồm có V8 JavaScript engine của Google, libUV, và vài thư viện khác.

Node.js được tạo bởi Ryan Dahl từ năm 2009, và phát triển dưới sự bảo trợ của Joyent.

Mục tiêu ban đầu của Dahl là làm cho trang web có khả năng push như trong một số ứng dụng web như Gmail. Sau khi thử với vài ngôn ngữ Dahl chọn Javascript vì một API Nhập/Xuất không đầy đủ. Điều này cho phép anh có thể định nghĩa một quy ước Nhập/Xuất điểu khiển theo sự kiện, non-blocking.

Vài môi trường tương tự được viết trong các ngôn ngữ khác bao gồm Twisted cho Python, Perl Object Environment cho Perl, libevent cho C và EventMachine cho Ruby. Khác với hầu hết các chương trình Javascript, Nodejs không chạy trên một trình duyệt mà chạy trên Server. Node.js sử dụng nhiều chi tiết kỹ thuật của CommonJS. Nó cung cấp một môi trường REPL cho kiểm thử tương tác.

Node.js được InfoWorld bình chọn là “Công nghệ của năm” năm 2012.

Ví dụ


Đây là phiên bản hello world HTTP Server trên Node.js:

var http = require('http');

http.createServer(function (request, response) {
    response.writeHead(200, {'Content-Type': 'text/plain'});
    response.end('Hello Worldn');
}).listen(8000);

console.log('Server running at http://localhost:8000/');

Đoạn mã sau là một máy chủ TCP lắng nghe trên cổng 7000 và echo chuỗi ‘hello’ ra mỗi kết nối:

var net = require('net');

net.createServer(function (stream) {
    stream.write('hellorn');

    stream.on('end', function () {
        stream.end('goodbyern');
    });

    stream.pipe(stream);
}).listen(7000);

Cộng đồng


Cộng đồng phát triển Node.js chủ yếu tập trung ở hai nhóm google: nodejs và nodejs-dev, một kênh IRC là #node.js trên mạng freenode. Có một hội thảo về Node.js là NodeConf được tổ chức thường niên.

Hiện nay Node.js được sử dụng bởi nhiều công ty trong đó có Linkedin, Microsoft, Yahoo! và Walmart.

Các Framework nổi tiếng


  • Express.js được sử dụng phổ biến để phát triển ứng dụng trên nền Nodejs.
  • Electron.js được sử dụng để phát triển ứng dụng được sử dụng trên môi trường desktop.

Xem thêm


  • Cổng thông tin Free software
  • NPM – bộ quản lý đóng gói nổi bật của Node.js. Từ phiên bản Node.js 0.6.3, npm được cài tự động với Node.js.
  • YARN – Bộ quản lý đóng gói mã nguồn mở với hiệu năng cao.
  • JSAN, viết tắt của JavaScript Archive Network – một bộ quản lý gói khác ít dùng hơn.
  • Opa, một hướng tiếp cận khác cho lập trình ứng dụng web, có nhiều đặc trưng của Node.js

Back to top button