Hế lô mọi người, 1 tuần nữa lại qua và mình lại quay lại và giới thiệu với mọi người bài tiếp theo trong Series Nodejs. Nối tiếp với bài tổng quát về nodejs ở bài "one" 1 rổ lý thuyết thì chúng ta có vẻ sẽ tới thực hành "hello world" theo đúng chuẩn thì là vậy, cơ mà đã có 1 bài thực hành "hello world" mình đã đăng rùi mọi người có thể xem lại ở đây. Tiếp theo bài "two" này sẽ có cả lý thuyết và thực hành luôn. Oke vào việc thui
1. Khái niệm Module trong Nodejs
Khi viết code Nodejs, bạn có thể để toàn bộ code ứng dụng vào một file index.js duy nhất nếu bạn thích thế. Nodejs không quan tâm ứng dụng của bạn lớn cỡ nào, nó vẫn biên dịch code và chạy tốt. Nhưng nếu bạn làm như thế thì toàn bộ code của bạn sẽ trở thành một thứ gì đó càng ngày càng phức tạp và khó hiểu, lúc cần bảo trì sửa chữa code, thêm chức năng … sẽ trở nên cực kỳ khó khăn.
Từ đó “Module” trong Nodejs ra đời:
“Node.js sử dụng kiến trúc Module để đơn giản hóa việc tạo ra các ứng dụng phức tạp. Module là giống như các thư viện trong C, C#, Java, … Mỗi module chứa một tập các hàm chức năng có liên quan đến một “đối tượng” của Module.”
“Các module được giữ tách biệt riêng với nhau, tách riêng với code base, khi nào cần sử dụng những cái nào thì gọi chúng ra và kết hợp lại với nhau tùy logic xử lý của bạn.”
“Tóm lại, mình hiểu theo một cách đơn giản thế này: Module là các đoạn code được đóng gói lại với nhau và được giữ Private, chỉ các hàm và biến được định nghĩa bên trong Module là có thể truy cập và thao tác với nhau. Còn khi nào cần sử dụng Module từ bên ngoài thì chúng ta sẽ chìa các API là các biến, các hàm, hoặc cả 2 biến và hàm ra bên ngoài bằng cách sử dụng đối tượng exports hoặc module.exports.“
2. Module tích hợp sẵn trong Nodejs và Module tải về từ bên ngoài.
– Các module tích hợp (Built-in Modules):
Đây là những module mà sau khi cài đặt Nodejs xong bạn đã có thể gọi ra và sử dụng. Ví dụ như http, https, fs, path…vv…
Danh sách các module tích hợp đều được liệt kê ở đây
– Các module bên ngoài (External Modules):
Điều thực sự khiến cho Nodejs nổi tiếng mà mình nhận thấy đó không phải là ở các module tích hợp, mà chính là một hệ sinh thái khổng lồ của các module mã nguồn mở bên ngoài được cung cấp bởi cộng đồng Nodejs.
Chúng ta có thể cài đặt được các module bên ngoài này thông qua NPM và một trang web cực kỳ thân thuộc với những ai làm việc cùng Nodejs đó là https://www.npmjs.com
Cũng bài trước mình có sử dụng một module bên ngoài đó là express để viết ứng dụng "Hế lô bà già"
Câu lệnh cài đặt: npm install --save express
Và khi muốn sử dụng thì sẽ gọi require("express");
3. Tự viết và sử dụng một Module đơn giản.
Phần này mình sẽ hướng dẫn mọi người viết 1 Module lấy random trong mảng thật giản đơn nhé. ( Mình sử dụng code của bài viết Hế lô bà già nên mọi người có thể xem lại bài viết nhé ).
Bước 1: Tạo file random.js
Như mọi người thấy thì hàm sẽ có chức năng lấy ngẫu nhiên 1 phần tử ở trong mảng truyền vào.
Bước 2: Gọi nó ở trong index.js( lúc nãy mình đã "thò ra" hàm getRandom thì giờ muốn sử dụng thì ta "tóm" lấy "nó"), giống với việc import module express mình đã làm ở bài trước nhé.
Bước 3: Bật bảng cmd lên + node index.js
+ enter => vào http://localhost:3000/ bằng trình duyệt để xem thui
Và kết quả đây:
Và ấn F5 để load lại xem có random khum nhé( nếu khum random thì hãy comment và liên lạc bên dưới để nhận hỗ trợ ưu đãi nhất nhé)