1. Trang chủ
  2. » Tất cả

Đồ án tìm hiểu reactjs và xây dựng web quản lý nhà hàng

65 46 0
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Đồ Án Tìm Hiểu ReactJS Và Xây Dựng Web Quản Lý Nhà Hàng
Tác giả Trương Xuân Tâm, Võ Đông Phú
Người hướng dẫn ThS. Huỳnh Hồ Thị Mộng Trinh
Trường học Trường Đại học Công Nghệ Thông Tin, Đại học Quốc Gia Thành Phố Hồ Chí Minh
Chuyên ngành Khoa Công Nghệ Phần Mềm
Thể loại Đồ án
Năm xuất bản 2022
Thành phố Thành phố Hồ Chí Minh
Định dạng
Số trang 65
Dung lượng 10,7 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Mô tả bài toán Trong thời buổi công nghệ thông tin, và Internet bùng nổ như hiện nay, việctriển khai và sử dụng website trong lĩnh vực quản lý nhà hàng khách sạn đã giúptối ưu hóa và giả

Trang 1

ĐẠI HỌC QUỐC GIA TP HỒ CHÍ MINH

TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN

Giảng viên hướng dẫn: ThS Huỳnh Hồ Thị Mộng Trinh

Nhóm thực hiện: 19522167 – Trương Xuân Tâm

19522025 – Võ Đông Phú

Trang 2

MỤC LỤC

Trang 4

CHƯƠNG 8: TÀI LIỆU THAM KHẢO 64

Hi vọng với sự chỉ bảo và góp ý từ cô, nhóm đề tài có thể tiếp tục phát triển đểứng dụng ngày càng được mở rộng và phục vụ được tốt hơn cho người dùng.Mặc dù đã có nhiều cố gắng trong suốt quá trình thực hiện đề tài, song khôngthể tránh khỏi những hạn chế, thiếu sót Chúng em mong rằng sẽ nhận đượcnhững đóng góp và nhận xét chân thành từ cô, các bạn sinh viên và người dùngtrong quá trình sử dụng phần mềm để phần mềm ngày càng hoàn thiện hơnnữa Mọi đóng góp xin vui lòng gửi về email: 19522167@gm.uit.edu.vn hoặc19522025@gm.uit.edu.vn

Mỗi ý kiến đóng góp của cô và các bạn sẽ là một nguồn động lực to lớn đối với

Trang 5

chúng em để chúng em có thể cải thiện phần mềm tốt hơn và xây dựng nhữngphần mềm hữu ích đối với người dùng hơn nữa.

Chúng em xin trân trọng cảm ơn

Thành phố Hồ Chí Minh, ngày 10 tháng 12 năm 2022

Chương 1 - TỔNG QUAN ĐỀ TÀI

1.1 Mô tả bài toán

Trong thời buổi công nghệ thông tin, và Internet bùng nổ như hiện nay, việctriển khai và sử dụng website trong lĩnh vực quản lý nhà hàng khách sạn đã giúptối ưu hóa và giảm được nhân công cũng như các công việc phức tạp như tính toán,trích xuất và xử lý nhanh hơn giúp người dùng tiết kiệm thời gian và mang lại cho

họ cảm giác trải nghiệm tuyệt vời hơn

Việc xây dựng website quản lý thông tin nhà hàng sẽ hỗ trợ truyền thông,quảng bá thương hiệu Trang web là nơi thể hiện những điều tốt đẹp diễn ra trongnhà hàng, các hình ảnh video hay các tin tức sự kiện được cập nhật liên tục sẽ đemnhà hàng gần gũi hơn với những người đang sử dụng công nghệ Qua đó, nhà hàng

sẽ tăng số lượng thực khách và tạo ra lợi nhuận lớn, tăng cường mạng lưới kháchhàng qua tương tác online Các dịch vụ đặt món ăn, đặt bàn, thanh toán online sẽlàm cho khách hàng cảm thấy hứng thú hơn cũng như tiết kiệm được rất nhiều thờigian Qua website khách hàng sẽ được nhân viên hệ thống tư vấn tận tình và nhanhchóng Thông qua website việc quản lý nhà hàng sẽ dễ dàng và đạt được hiệu quảcao Các công cụ đo lường, biểu đồ phát triển sẽ giúp người quản lý kiểm soátđược tất cả mọi vấn đề trong nhà hàng Ngoài ra xây dựng website quản lý thông

Trang 6

tin nhà hàng sẽ tiết kiệm được khoảng chi phí, nguồn nhân lực Như vậy, sẽ tăngthêm tiềm lực cạnh tranh trong ngành.

Chính vì vậy nhóm em tìm hiểu để triển khai ứng dụng website quản lýthông tin nhà hàng Để tạo kết nối với khách hàng và dễ dàng trong quản lý thu chi,quản lý nhân viên, quản lý các món ăn thức uống Thúc đẩy sự phát triển của nhàhàng, hiện đại trong việc quản lý

Trong quá trình xây dựng ứng dụng website quản lý thông tin nhà hàng.Nhóm chúng em đã triển khai lên AWS (amazon web services) Người dùng có thểtruy cập vào hệ thống bất kỳ ở đâu có internet để sử dụng các chức năng của nhàhàng

1.2 Yêu cầu đặt ra

- Một số yêu cầu nhóm đặt ra khi phát triển ứng dụng:

+ Tính tiện dụng: ứng dụng phải thân thiện với người dùng, dễ dàng tiếp cậnvới mọi lứa tuổi

+ Tính đúng đắn: thông tin đưa lên phải được xác thực kĩ về độ chính xác, ứngdụng chạy không lỗi

+ Tính thích nghi: ứng dụng chạy được trên nhiều nền tảng trình duyệt webkhác nhau

+ Tính tiến hoá: ứng dụng phải dễ dàng phát triển thêm tính năng mà khôngảnh hưởng đến các tính năng đã phát triển trước đó

+ Tính bảo trì: ứng dụng có thể thay đổi một số chức năng hoặc cập nhật thêmthông tin một cách tiện lợi nhất

+ Tính tương tác: tạo ra được một môi trường tương tác tốt giữa hệ thống vàngười dùng

Trang 8

Chương 2 - PHÂN TÍCH ĐẶC TẢ YÊU CẦU

2.1 Sơ đồ usecase

Hình 2.1 Sơ đồ usecase hệ thống

Trang 9

2.1.1 Use Case khách hàng

Hình 2.1.1 Usecase khách hàng

2.1.2 Use Case Admin

Trang 10

Hình 2.1.2 Use Case Admin

Trang 11

2.1.4 Danh sách các Use-case

Bảng 3 2 Danh Sách các Use-case

ST

T

Tên Use-case Ý nghĩa/Ghi chú

3 Đăng ký tài khoản Đăng ký tài khoản mới

5 Xem thông tin của cửa hàng Xem thông tin món ăn thức uống, các

chương trình khuyến mãi, thông tin, giới thiệu website…

6 Xem menu món ăn Xem menu các món ăn trong cửa hàng

14 Cập nhật thông tin món ăn Admin cập nhật thông tin món ăn

16 Xóa bàn ăn Admin xóa bàn ăn ra khỏi hệ thống

17 Cập nhật thông tin bàn ăn Admin cập nhật thông tin bàn ăn

Trang 12

18 Quản lý đặt bàn Xem thông tin chi tiết khách hàng đặt

bàn

2.1.5 Đặc tả Use-case

Use-Case “Đăng nhập”

Bảng 3 3 Use-case đăng nhập

Tóm tắt - Use-case được sử dụng để đăng nhập vào hệ thống Chỉ

khi đăng nhập được vào hệ thống thì người dùng mớiđược cấp quyền sử dụng các chức năng nghiệp vụ của hệthống

- Use-case bắt đầu khi hệ thống được kích hoạt và chưađăng nhập dưới quyền sử dụng của bất kỳ người dùngnào Hoặc khi người dùng chọn đăng xuất ra khỏi hệthống

Dòng sự kiện chính 1 Người dùng nhập thông tin tài khoản đăng nhập, bao

gồm tên đăng nhập và mật khẩu đăng nhập

2 Hệ thống kiểm tra thông tin đăng nhập chính xác

3 Hiển thị trang thông tin quản lý công việc, quản lý chitiêu cá nhân

Dòng sự kiện phụ 1 Hệ thống kiểm tra thông tin đăng nhập không chính

xác

2 Hiển thị báo lỗi trên màn hình đăng nhập

Các yêu cầu đặc biệt - Có kết nối internet

Tiền điều kiện

(pre-condition)

- Trạng thái chưa đăng nhập

- Hệ thống đã được kết nối thành công tới server

Hậu điều kiện

(post-condition)

- Hệ thống rơi vào một trong hai trạng thái:

Trang 13

+ Đã đăng nhập: sẵn sàng làm việc với người dùng đãđăng nhập.

+ Chưa đăng nhập: sẵn sàng cho người dùng đăng nhậplại

- Hệ thống sẵn sàng cho các thao tác từ người dùng

Use-Case “Đăng xuất”

Bảng 3 4 Use-case đăng xuất

Tóm tắt - Use-case được sử dụng để đăng xuất ra khỏi hệ thống

Sau khi đăng xuất, hệ thống sẽ kết thúc phiên làm việccủa người dùng, dữ liệu và phiên làm việc của ngườidùng sẽ được xóa bỏ tại local

- Use-case bắt đầu khi hệ thống đang ở trạng thái “Đãđăng nhập” và người dùng muốn kết thúc phiên làm việc

và chọn đăng xuất ra khỏi hệ thống

Dòng sự kiện chính 1 Hệ thống kết thúc phiên làm việc với người dùng, hệ

thống chuyển sang trạng thái “Chưa đăng nhập”

2 Hệ thống xóa toàn bộ dữ liệu của người dùng tronglocal (thiết bị đang sử dụng)

3 Hệ thống quay trờ về màn hình đăng nhập

Dòng sự kiện phụ - Hệ thống gặp lỗi trong quá trình xóa dữ liệu Hệ thống

sẽ báo lỗi cho người dùng, tiếp tục đăng xuất ra khỏi hệthống Dữ liệu chưa được xóa hết sẽ được làm mới trongquá use-case đồng bộ dữ liệu

Các yêu cầu đặc biệt Không có

Tiền điều kiện

(pre-condition)

- Hệ thống đang ở trong trạng thái “Đã đăng nhập”

Hậu điều kiện - Hệ thống sẽ rơi vào trạng thái “Chưa đăng nhập”

Trang 14

(post-condition) - Dữ liệu người dùng trong hệ thống được làm mới.

- Hệ thống sẵn sàng cho các thao tác từ người dùng

Use-Case “Đăng ký tài khoản”

Bảng 3 5 Use-case đăng ký tài khoản

Tóm tắt - Use-case được sử dụng để tạo mới thông tin người

dùng hệ thống, đăng ký tài khoản sử dụng hệ thống

- Use-case bắt đầu khi hệ thống đang ở trạng thái “Chưađăng nhập” và người dùng chọn khởi tạo tài khoản hệthống

Dòng sự kiện chính 1 Người dùng nhập thông tin đăng ký: thông tin cá nhân

được yêu cầu, thông tin tài khoản đăng nhập

2 Hệ thống kiểm tra tính hợp lệ thông tin đăng ký củangười dùng

3 Hệ thống xác định thông tin đăng ký hợp lệ

4 Hệ thống đăng ký thông tin người sử dụng, và cấpquyền cho người dùng vừa đăng ký

5 Hệ thống thông báo người dùng đã được đăng kýthành công cho người dùng

6 Hệ thống hiển thị trang chủ của cửa hàng

Dòng sự kiện phụ 1 Hệ thống xác định thông tin đăng ký không hợp lệ:

trùng lắp, không chính xác, v.v…

2 Hệ thống báo lỗi ra màn hình đăng ký

Các yêu cầu đặc biệt - Có kết nối internet.

Tiền điều kiện

(pre-condition)

- Hệ thống đang ở trong trạng thái “Chưa đăng nhập”

- Hệ thống đã được kết nối thành công tới server

Hậu điều kiện

(post-condition)

- Hệ thống sẽ rơi vào trạng thái “đã đăng nhập”

- Hệ thống sẵn sàng cho các thao tác từ người dùng

Trang 15

Use-Case “Thêm account”

Bảng 3 8 Use-case thêm account

Tóm tắt - Use-case được sử dụng để thêm thông tin một tài khoản

Dòng sự kiện phụ 1 Hệ thống xác định thông tin nhân viên không hợp lệ

2 Thông báo ra màn hình thông tin không hợp lệ

Các yêu cầu đặc biệt - Có kết nối internet.

Tiền điều kiện

(pre-condition)

- Hệ thống đang ở trong trạng thái “đăng nhập”

- Hệ thống đã được kết nối thành công tới server

Hậu điều kiện

Dòng sự kiện chính 1 Quản lý điền thông tin của bàn ăn mới vào hệ thống

2 Hệ thống kiểm tra tính hợp lệ thông tin

Trang 16

4 Hệ thống thêm thông tin bàn ăn vào cơ sở dữ liệu nếuhợp lệ.

Dòng sự kiện phụ 1 Hệ thống xác định thông tin bàn ăn không hợp lệ

2 Thông báo ra màn hình thông tin không hợp lệ

Các yêu cầu đặc biệt - Có kết nối internet.

Tiền điều kiện

(pre-condition)

- Hệ thống đang ở trong trạng thái “đăng nhập”

- Hệ thống đã được kết nối thành công tới server

Hậu điều kiện

(post-condition)

- Hệ thống sẵn sàng cho các thao tác từ người dùng

Use-Case “Xem món ăn”

Bảng 3 10 Xem món ăn

Tóm tắt - Use-case được sử dụng để xem danh sách món ăn hiện có

- Use-case bắt đầu khi ở trạng tháí “đã đăng nhập” và vàotrang danh sách món ăn

Dòng sự kiện chính 1 Người dùng đăng nhập vào hệ thống

2 Hệ thống kiểm tra tính hợp lệ thông tin

3 Xác nhận thông tin hợp lệ

4 Người dùng chọn vào “List food “ hoặc xem menu hiện

có trên thanh header

Dòng sự kiện phụ

Các yêu cầu đặc biệt - Có kết nối internet.

Tiền điều kiện

(pre-condition)

- Hệ thống đang ở trong trạng thái “đăng nhập”

- Hệ thống đã được kết nối thành công tới server

Hậu điều kiện

(post-condition)

- Hệ thống sẵn sàng cho các thao tác từ người dùng

Use-Case “Thêm món ăn”

Trang 17

Dòng sự kiện chính 1 Quản lý điền thông tin của món ăn vào hệ thống

2 Hệ thống kiểm tra tính hợp lệ thông tin

3 Xác nhận thông tin hợp lệ

4 Hệ thống thêm thông tin món ăn vào cơ sở dữ liệu nếuhợp lệ

Dòng sự kiện phụ 1 Hệ thống xác định thông tin món ăn không hợp lệ

2 Thông báo ra màn hình thông tin không hợp lệ

Các yêu cầu đặc biệt - Có kết nối internet.

Tiền điều kiện

(pre-condition)

- Hệ thống đang ở trong trạng thái “đăng nhập”

- Hệ thống đã được kết nối thành công tới server

Hậu điều kiện

Dòng sự kiện chính 1 Nhân viên điền thông tin đặt món vào hệ thống

2 Hệ thống kiểm tra tính hợp lệ thông tin

3 Xác nhận thông tin hợp lệ

Trang 18

4 Hệ thống thêm thông tin đặt món vào cơ sở dữ liệu nếuhợp lệ.

Dòng sự kiện phụ 1 Hệ thống xác định thông tin đặt món không hợp lệ

2 Thông báo ra màn hình thông tin không hợp lệ

Các yêu cầu đặc biệt - Có kết nối internet.

Tiền điều kiện

(pre-condition)

- Hệ thống đang ở trong trạng thái “đăng nhập”

- Hệ thống đã được kết nối thành công tới server

Hậu điều kiện

(post-condition)

- Hệ thống sẵn sàng cho các thao tác từ người dùng

2.1.6 COMPONENT DIAGRAM, DEPLOYMENT

2.1.6.1 Component diagram

Trang 19

Hình 3 2 Sơ đồ triển khai của hệ thống

2.1.6.2 Deployment diagram

Hình 3 3 Sơ đồ thành phần của hệ thống

Trang 20

Chương 3 : THIẾT KẾ KIẾN TRÚC DỮ LIỆU

3.1 Kiến trúc tổng thể của hệ thống

Hình 3.1 Mern stack Development

MERN Stack :MERN stack là nguyên bộ combo open source các công nghệ đềuliên quan đến Javascript là cũng hot nhất hiện nay: MongoDB, ExpressJS,

React/React Native, NodeJS Người ta dùng MERN stack để xây dựng React

Universal App

3.2 Kiến trúc mô hình

Mô hình MVC (Model – View – Controller) là một trong những mô hình kiếntrúc ứng dụng phổ biến nhất Ban đầu mô hình này được áp dụng chủ yếu ở cácứng dụng desktop, nhưng sau này ý tưởng về mô hình MVC được ứng dụng chocác nền tảng khác như Web

Trang 21

Hình 3.2.1 Mô Hình MVC

3.2.1 Cấu trúc mô hình MVC

Tầng xử lý – Controller

Xử lý logic của ứng dụng, là cầu nối giữa tầng View và Model Hay nói một

cách cụ thể, Controller sẽ nhận yêu cầu được gửi từ View và thực hiện xử lí yêucầu, truy vấn hoặc thao tác dữ liệu lên tầng Model Sau khi xử lý xong, kết quả sẽđược trả về lại cho tầng View

Tầng logic dữ liệu – Model

Tầng Model là trung gian giữa ứng dụng và hệ quản trị cơ sở dữ liệu để cung

cấp và quản lý mô hình và các thao tác lên dữ liệu Thông thường, tầng Model sẽkết

nối với một hoặc nhiều cơ sở dữ liệu để thực hiện các thao tác lên dữ liệu

Tầng giao diện – View

Thể hiện giao diện người dùng, là thành phần giao tiếp giữa người dùng (user)

và ứng dụng (application)

Trang 22

3.2.2 Mô hình MVC trong ứng dụng Web

Với sự phát triển của các công nghệ xây dựng web ở cả Frontend và Backend,các nhà phát triển có thể xây dựng và phát triển ứng dụng web một cách độc lậpnhưng vẫn đảm bảo được tính kiến trúc của ứng dụng

Hình 3.2.2 Mô Hình MVC trong ứng dụng Web

− Tầng giao diện người dùng (View) sẽ được phát triển độc lập ở phía client sử

dụng các công nghệ Frontend như VueJS, ReactJS, Nói cách khác, client sẽđược chạy trên 1 server độc lập và có thể tương tác với phía server của backend

− Tầng xử lí (Controller) và logic dữ liệu (Model) sẽ được phát triển độc lập ở

phía server sử dụng các công nghệ Backend như ExpressJS, DotNetCore, Flank,

− Sau khi hoàn thành việc phát triển, client sẽ cung cấp 1 bản build hoàn chỉnh đểthêm vào phía Server Người dùng sẽ yêu cầu thành phần giao diện thông qua

request gửi đến Server

Trang 23

NodeJS có thể được dùng để xây dựng các loại ứng dụng khác nhau như các ứngdụng dòng lệnh, ứng dụng web, ứng dụng trò chuyện theo thời gian thực, máy chủREST API, Tuy nhiên, NodeJS thường được dùng chủ yếu để xây dựng các

chương trình mạng như máy chủ web, tương tự như PHP, Java hoặc ASP.NET

Vì đây là mã nguồn mở nên cho phép bạn sử dụng miễn phí và đồng thời được liêntục được chỉnh sửa, cải tiến bởi cộng đồng các nhà phát triển toàn cầu

Lợi ích sử dụng Nodejs

● IO hướng sự kiện không đồng bộ giúp xử lý nhiều yêu cầu đồng thời

● Đáp ứng được những yêu cầu về thời gian thực

Trang 24

● Có tốc độ cực rất nhanh, đáp ứng được nhu cầu sử dụng của khách truy cập

‘khổng lồ’ trong thời gian ngắn

● Sử dụng JavaScript, một ngôn ngữ lập trình rất dễ học

● Chia sẻ cùng một đoạn mã với cả phía máy chủ và máy khách

● Npm và các module rất mạnh mẽ và vẫn đang tiếp tục phát triển

● Có một cộng đồng lớn mạnh, có nhiều mã được chia sẻ qua github

● Tương thích với nhiều thiết bị, nhiều hệ điều hành như MacOS, Window,Linux,…

3.2.4 ReactJS

Hình 3.2.4 Reactjs

ReactJS là gì?

ReactJS là một thư viện JavaScript được tạo ra để xây dựng giao diện người dùng

có khả năng tương tác tốt và nhanh chóng cho các ứng dụng web và di động Nó là

Trang 25

một thư viện mã nguồn mở, xây dựng dựa trên các component, giao diện ngườidùng chỉ chịu trách nhiệm cho tầng view của ứng dụng.

Nó được sử dụng bởi các công ty lớn, đã thành lập và các công ty mới thành lậpnhư: Netflix, Airbnb, Instagram và New York Times v v ReactJS mang lại nhiềulợi thế cho các lập trình viên, khiến nó trở thành một lựa chọn tốt hơn so với cácFramework khác như Angular

Trong kiến trúc Model View Controller (MVC), tầng view chịu trách nhiệm vềgiao diện của ứng dụng ReactJS được tạo ra bởi Jordan Walke, một kỹ sư phầnmềm tại Facebook

Các tính năng của ReactJS

Chúng ta đã vừa tìm hiểu ReactJS là gì rồi, vậy bây giờ hãy xem nó có những tínhnăng gì mà khiến cho nhiều công ty sử dụng nó đến vậy

JSX – JavaScript Syntax Extension

JSX như tên gọi của nó, là một phần mở rộng cú pháp cho JavaScript Nó được sửdụng với ReactJS để mô tả giao diện người dùng trông như thế nào Bằng cách sử

Trang 26

JavaScript Điều này làm cho mã dễ hiểu và dễ gỡ lỗi hơn, vì nó tránh việc sử dụngcác cấu trúc DOM JavaScript phức tạp.

Virtual DOM

Virtual DOM là một định dạng dữ liệu của JavaScript, với khối lượng nhẹ và đượcdùng để thể hiện nội dung của DOM – Document Object Model – Mô hình Đốitượng Tài liệu tại một thời điểm nhất định nào đó Khi trạng thái của một đối tượngthay đổi, VDOM chỉ thay đổi đối tượng đó trong DOM thực thay vì cập nhật tất cảcác đối tượng

Nghe có vẻ khá phức tạp đúng không? Đừng lo lắng quá, trước tiên chúng ta hãytìm hiểu DOM là gì, sau đó chúng ta sẽ xem xét cách VDOM và DOM thực tươngtác với nhau

● Mô hình Đối tượng Tài liệu (DOM) là gì?

DOM (Mô hình Đối tượng Tài liệu) coi một file XML hoặc HTML như một cấutrúc cây, trong đó mỗi nút là một đối tượng đại diện cho một phần của tài liệu

● Virtual DOM và ReactJS DOM tương tác với nhau như thế nào?

Khi trạng thái của một đối tượng thay đổi trong ứng dụng ReactJS, VDOM sẽ được

Trang 27

đối tượng đó trong DOM thực thay vì cập nhật tất cả các đối tượng.

Điều này làm cho mọi thứ hoạt động nhanh chóng

Redux

Redux là một phần cực kỳ quan trọng trong ReactJS

Bản thân của ReactJS không sở hữu các module chuyên dụng nhằm để xử lý dữliệu Vì thế, ReactJS được triển khai một cách độc lập và chia nhỏ View thànhnhững component nhỏ khác nhau, điều này sẽ giúp cho việc quản lý dễ dàng hơn,các thành phần sẽ liên kết chặt chẽ với nhau hơn

One-way Data Binding

Liên kết dữ liệu một chiều của ReactJS giữ mọi thứ theo mô-đun và nhanh chóng.Luồng dữ liệu một chiều có nghĩa là khi một nhà phát triển thiết kế một ứng dụngReactJS, họ thường lồng các thành phần con bên trong các thành phần mẹ Bằngcách này, nhà phát triển biết được lỗi xảy ra ở đâu và khi nào, giúp họ kiểm soát tốthơn toàn bộ ứng dụng web

Trang 28

ReactJS được xây dựng xoay quanh các component, trong khi đó, các Frameworkkhác dùng template Để tạo ra một component có đầy đủ những đặc tính, bạn chỉcần sử dụng phương thức createClass dùng để nhận một tham số mô tả đặc tính.

Tại sao nên sử dụng ReactJS?

Bây giờ chúng ta đã biết ReactJS là gì và các tính năng của nó, hãy tiếp tục và xemtại sao ReactJS là thư viện front-end phổ biến nhất để phát triển ứng dụng web

Sự phổ biến của ReactJS ngày nay đã lu mờ tất cả các Framework phát triển

front-end khác Đây là lý do tại sao:

● Dễ dàng tạo các ứng dụng động

ReactJS giúp tạo các ứng dụng web động dễ dàng hơn vì nó yêu cầu ít mã hóa hơn

và cung cấp nhiều chức năng hơn, trái ngược với JavaScript, nơi việc viết mã

thường trở nên phức tạp rất nhanh

● Cải thiện hiệu năng với Virtual DOM

ReactJS cho phép người dùng xây dựng các Virtual DOM và host chúngtrong bộ nhớ Ưu điểm này sẽ giúp Virtual thay đổi ngay khi DOM thực tế

có sự thay đổi Cập nhật liên tục giúp các ứng dụng tránh tình trạng bị gián

Trang 29

đoạn Người dùng sử dụng liên tục, website ổn định giúp doanh thu duy trì

và tăng trưởng vượt bậc

● Dễ dàng viết component dễ dàng hơn

Để viết các component trong ReactJS, người dùng sẽ sử dụng JSX Đây làmột sự kết hợp giữa JavaScript và HTML Tuy không phải là phần mởrộng cú pháp phổ biến nhất, JSX được người dùng đánh giá cao khi pháttriển components đặc biệt hoặc các ứng dụng có khối lượng lớn

● Thân thiện với SEO

Đây là mong muốn của tất cả doanh nghiệp trong thời đại thương mại điện

tử sôi động hiện nay

Giao diện người dùng có thể truy cập càng nhiều công cụ tìm kiếm khácnhau đồng nghĩa với khả năng tiếp cận khách hàng càng cao Đây là mộttrong những yếu tố ảnh hưởng trực tiếp đến sự tăng trưởng doanh thu bánhàng qua website

Trang 30

3.2.5 MongoDB

Hình 3.2.5 MongoDB

MongoDB là gì?

MongoDB là một database hướng tài liệu (document), một dạng NoSQL database.

Vì thế, MongoDB sẽ tránh cấu trúc table-based của relational database để thíchứng với các tài liệu như JSON có một schema rất linh hoạt gọi là BSON

MongoDB sử dụng lưu trữ dữ liệu dưới dạng Document JSON nên mỗi một

collection sẽ các các kích cỡ và các document khác nhau Các dữ liệu được lưu trữtrong document kiểu JSON nên truy vấn sẽ rất nhanh

Ưu điểm của MongoDB

Trang 31

● Dữ liệu lưu trữ phi cấu trúc, không có tính ràng buộc, toàn vẹn nên tínhsẵn sàng cao, hiệu suất lớn và dễ dàng mở rộng lưu trữ.

● Dữ liệu được caching (ghi đệm) lên RAM, hạn chế truy cập vào ổ cứngnên tốc độ đọc và ghi cao

Trang 32

Chương 4 : THIẾT KẾ DỮ LIỆU

4.1 Sơ đồ logic

4.2 Mô tả chi tiết kiểu dữ liệu

Ngày đăng: 01/02/2023, 21:11

TỪ KHÓA LIÊN QUAN

w