Tải bản đầy đủ (.docx) (152 trang)

(Đồ án tốt nghiệp) xây dựng website bán sản phẩm thân thiện môi trường bằng nodejs

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (21.88 MB, 152 trang )

BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI
HỌC SƯ PHẠM KỸ THUẬT THÀNH PHỐ HỒ
CHÍ MINH

ĐỒ ÁN TỐT NGHIỆP
NGÀNH CƠNG NGHỆ THÔNG TIN

XÂY DỰNG WEBSITE BÁN SẢN PHẨM
THÂN THIỆN MÔI TRƯỜNG BẰNG NODEJS

GVHD: TS. LÊ VĂN VINH
SVTH: PHẠM THỊ NGỌC HƯỜNG
MSSV: 16110351
SVTH: LÊ THỊ THANH NGÂN
MSSV: 16110396

SKL007109

Tp. Hồ Chí Minh, năm 2020


TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT
TP.HCM KHOA CÔNG NGHỆ THÔNG TIN BỘ
MÔN CÔNG NGHỆ PHẦN MỀM
~~~o0o~~~

PHẠM THỊ NGỌC HƯỜNG – 16110351
LÊ THỊ THANH NGÂN – 16110396
Đề Tài:

XÂY DỰNG WEBSITE BÁN SẢN PHẨM


THÂN THIỆN MƠI TRƯỜNG BẰNG NODEJS
KHĨA LUẬN TỐT NGHIỆP KỸ SƯ CNTT
GIÁO VIÊN HƯỚNG DẪN
TS. LÊ VĂN VINH
KHÓA 2016-2020


TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT
TP.HCM KHOA CÔNG NGHỆ THÔNG TIN BỘ
MÔN CÔNG NGHỆ PHẦN MỀM
~~~o0o~~~

PHẠM THỊ NGỌC HƯỜNG – 16110351
LÊ THỊ THANH NGÂN – 16110396
Đề Tài:

XÂY DỰNG WEBSITE BÁN SẢN PHẨM
THÂN THIỆN MƠI TRƯỜNG BẰNG NODEJS
KHĨA LUẬN TỐT NGHIỆP KỸ SƯ CNTT
GIÁO VIÊN HƯỚNG DẪN
TS. LÊ VĂN VINH
KHÓA 2016-2020


*****

PHIẾU NHẬN XÉT CỦA GIÁO VIÊN PHẢN BIỆN
Họ tên sinh viên 1:
Họ tên sinh viên 2:
Chuyên ngành:

Tên đề tài:
NodeJS
Họ tên GVPB:
NHẬN XÉT:
1.

Về nội dung đề tài và khối lượng công việc thực hiện:

2.

Ưu điểm

3.

Khuyết điểm

4.

Đề nghị cho bảo vệ hay khơng? …………………….
5. Đánh giá xếp loại:
6. Điểm:
TP. Hồ Chí Minh, ngày …… tháng …… năm 2020
Giáo viên phản biện
(Ký & ghi rõ họ tên)


LỜI CẢM ƠN

Nhóm em xin chân thành cảm ơn khoa CÔNG NGHỆ THÔNG TIN, BỘ MÔN
CÔNG NGHỆ PHẦN MỀM, TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT TP.HCM đã

tạo điều kiện thuận lợi cho chúng em thực hiện đề tài này.
Chúng em cũng xin được gửi lời cảm ơn chân thành nhất đến thầy TS. LÊ VĂN
VINH, người đã tận tình chỉ bảo và hướng dẫn nhóm em thực hiện đề tài.
Bên cạnh đó, chúng em xin gửi lời cảm ơn đến các thầy cô giảng viên của trường
Đại Học Sư Phạm Kỹ Thuật Tp.HCM nói chung cũng như các thầy cơ giảng viên khoa
Cơng Nghệ Thơng Tin nói riêng, những người đã giảng dạy, tạo điều kiện cho em tích
lũy được những kiến thức quý báu trong những năm học qua.
Chúng em đã nỗ lực rất nhiều để hoàn thành tốt nhất nhiệm vụ đề tài, nhưng do
khả năng còn hạn chế nên chắc chắn sẽ không tránh khỏi thiếu sót. Chúng em mong
nhận được sự tận tình chỉ bảo của các thầy cô để ngày càng tiến bộ.

TP. Hồ Chí Minh, ngày …… tháng …… năm 2020
Nhóm sinh viên thực hiện:

PHẠM THỊ NGỌC HƯỜNG
LÊ THỊ THANH NGÂN


*****

ĐỀ CƯƠNG CHI TIẾT KHÓA LUẬN TỐT NGHIỆP
Họ tên sinh viên 1:
Họ tên sinh viên 2:
Chuyên ngành:
Tên đề tài:

Xây dựng website bán sản phẩm thân thiện môi trường bằng
NodeJS

Họ tên GVHD:


TS. LÊ VĂN VINH

Thởi gian thực hiện: từ 19/02/2020 – 15/07/2020
NHIỆM VỤ CỦA KHĨA LUẬN:
 Tìm hiểu cơng nghệ NodeJS xây dựng website bán sản phẩm thân thiện môi
trường.
 Khảo sát hiện trạng, đánh giá các website bán sản phẩm thân thiện với mơi
trường.



Phân tích nghiệp vụ của một website mua bán sản phẩm.



Mơ hình hóa nghiệp vụ, xây dựng cơ sở dữ liệu.



Cài đặt các chức năng, kiểm thử tồn bộ hệ thống.

ĐỀ CƯƠNG VIẾT KHĨA LUẬN:
1.

PHẦN 1: PHẦN

MỞ ĐẦU 1.1. Tính cấp
thiết đề tài


1.2. Mục tiêu của đề tài
1.3. Cách tiếp cận và phương pháp nghiên
cứu 1.3.1. Đối tượng nghiên cứu
1.3.2. Phạm vi nghiên cứu
1.4. Kết quả dự kiến đạt được
2.

PHẦN 2: PHẦN NỘI DUNG


2.1. CHƯƠNG 1: CƠ SỞ LÝ THUYẾT
2.1.1. Tìm hiểu cơng nghệ


2.1.1.1.

Tìm hiểu Javascript

2.1.1.2.

Tìm hiểu NodeJS

2.1.1.3.

Tìm hiểu Express Framework của nodeJS

2.1.1.4.

Tìm hiểu Mongodb


2.1.1.5.

Tìm hiểu PassportJS

2.1.1.6.

Tìm hiểu về Socket.io

2.1.2. Tìm hiểu mơ hình MVC trong xây dựng website
2.1.2.1.

Tìm hiểu mơ hình MVC

2.1.2.2.

Chi tiết từng lớp mơ hình MVC

2.1.2.3.

Ưu - nhược điểm mơ hình MVC

2.2. CHƯƠNG 2: KHẢO SÁT HIỆN TRẠNG VÀ XÁC ĐỊNH YÊU CẦU

2.2.1. Khảo sát hiện trạng
2.2.2. Xác định yêu cầu
2.2.2.1.

u cầu chức năng

2.2.2.2.


u cầu phi chức năng

2.2.3. Mơ hình hóa yêu cầu
2.2.3.1.

Lược đồ use case

2.2.3.2.

Đặc tả use case

2.3. CHƯƠNG 3: THIẾT KẾ PHẦN MỀM
2.3.1. Thiết kế hệ thống
2.3.1.1.

Lược đồ lớp

2.3.1.2.

Lược đồ tuần tự

2.3.2. Thiết kế cơ sở dữ liệu
2.3.2.1.

Cấu trúc dữ liệu

2.3.2.2.

Các ràng buộc toàn vẹn


2.3.2.3.

Lược đồ thực thể liên kết

2.3.2.4.

Mô tả chi tiết các bảng dữ liệu

2.3.3. Thiết kế giao diện
2.4. Chương 4: Cài đặt và kiểm thử
2.4.1. Cài đặt
2.4.1.1.

Thiết lập môi trường

2.4.1.2.

Xây dựng cấu trúc project


2.4.2. Kiểm thử
3.

PHẦN 3: PHẦN

KẾT LUẬN 3.1. Kết quả đạt
được
3.2. Ưu điểm
3.3. Nhược điểm

3.4. Hướng phát triển trong tương lai
4.

TÀI LIỆU THAM KHẢO

KẾ HOẠCH THỰC HIỆN:
STT

THỜI GIAN

1

19/02 - 26

2

27/03 – 18

3

19/04 – 01



4

5

6


7

02/05 – 15/05

16/05 – 13/06

14/06 – 26/06

14/06 – 26/06

8

27/06 – 25/07

9

26/07 – 30/07


MỤC LỤC
PHẦN 1: PHẦN MỞ ĐẦU....................................................................................................................1

1.

TÍNH CẤP THIẾT ĐỀ TÀI................................................................................1

2.

MỤC TIÊU CỦA ĐỀ TÀI...................................................................................1


3.

CÁCH TIẾP CẬN VÀ PHƯƠNG PHÁP NGHIÊN CỨU................................2
3.1.

Đối tượng nghiên cứu.................................................................................2

3.2.

Phạm vi nghiên cứu....................................................................................2

4.

KẾT QUẢ DỰ KIẾN ĐẠT ĐƯỢC....................................................................3

PHẦN 2: PHẦN NỘI DUNG................................................................................................................4

CHƯƠNG 1: CƠ SỞ LÝ THUYẾT..........................................................................4
1.

2.

TÌM HIỂU CƠNG NGHỆ..............................................................................4
1.1.

Tìm hiểu Javascript.................................................................................4

1.2.

Tìm hiểu NodeJS......................................................................................5


1.3.

Tìm hiểu Express Framework của NodeJS............................................9

1.4.

Tìm hiểu MongoDB............................................................................... 10

1.5.

Tìm hiểu về Socket.io............................................................................. 13

1.6.

Tìm hiểu về PassportJS......................................................................... 14

TÌM HIỂU MƠ HÌNH MVC TRONG XÂY DỰNG WEBSITE...............16
2.1.

Tìm hiểu mơ hình MVC........................................................................ 16

2.2.

Chi tiết từng lớp mơ hình MVC............................................................ 17

2.3.

Ưu - Nhược điểm mơ hình MVC.......................................................... 18


CHƯƠNG 2: KHẢO SÁT HIỆN TRẠNG VÀ XÁC ĐỊNH YÊU CẦU................19
1.

KHẢO SÁT HIỆN TRẠNG.......................................................................... 19
1.1 Nhận xét một số website về môi trường..................................................... 19
1.2 Tổng hợp, đánh giá chung các websites về môi trường............................ 40
1.3 Tổng kết - Rút ra trang web mong muốn.................................................. 40

2.

3.

XÁC ĐỊNH YÊU CẦU.................................................................................. 41
2.1.

Yêu cầu chức năng................................................................................. 41

2.2.

u cầu phi chức năng.......................................................................... 42

MƠ HÌNH HĨA YÊU CẦU.......................................................................... 43
3.1.

Lược đồ use case.................................................................................... 43

3.2.

Đặc tả use case........................................................................................ 45


CHƯƠNG 3: THIẾT KẾ PHẦN MỀM.................................................................. 63


1.THIẾT KẾ HỆ THỐNG ...........................................

1.1. Lược đồ lớ

1.2. Lược đồ tu

2.THIẾT KẾ CƠ SỞ DỮ LIỆU ..................................

2.1. Cấu trúc d

2.2. Các ràng b

2.3. Lược đồ th

2.4. Mô tả chi t

3.THIẾT KẾ GIAO DIỆN ...........................................
CHƯƠNG 4: CÀI ĐẶT VÀ KIỂM THỬ ...............................................................

1.CÀI ĐẶT ....................................................................

1.1. Thiết lập m
1.2. Xây dựng

2.KIỂM THỬ ................................................................
PHẦN 3: PHẦN KẾT LUẬN ..............................................................................................................


1. KẾT QUẢ ĐẠT ĐƯỢC ...................................................................................

2. ƯU ĐIỂM ....................................................................

3. NHƯỢC ĐIỂM ...........................................................
4. HƯỚNG PHÁT TRIỂN TRONG TƯƠNG LAI ...........................................
TÀI LIỆU THAM KHẢO ....................................................................................................................


DANH MỤC CHỮ VIẾT TẮC
Ajax: Asynchronous JavaScript and XML
API: Application Programming Interface
App: application
CSS: Cascading Style Sheets
DOM: Document Object Model
HTML: Hyper Text Markup Language
HTTP: HyperText Transfer Protocol
JS / js: Javascript
JSX: JavaScript XML
MVC: Model – View – Controller
REST: Representational State Transfer
UI: user interface
URL: Uniform Resource Locator
XML: eXtensible Markup Language


DANH MỤC HÌNH ẢNH
Hình 1-Mơ hình MVC

[6]


................................................................................................ 16
[6]

Hình 2-Mơ hình hoạt động của DAO, BO và JAVA BEAN .......................................17
Hình 3-Hình ảnh trang giao diện trang chủ (admin, user)............................................... 20
Hình 4-Trang diễn đàn.................................................................................................... 20
Hình 5-Trang mơi trường................................................................................................ 21
Hình 6-Trang chi tiết sản phẩm....................................................................................... 22
Hình 7-Form đăng kí...................................................................................................... 23
Hình 8-Form đăng nhập.................................................................................................. 24
Hình 9-Trang chủ............................................................................................................ 28
Hình 10-Trang Design.................................................................................................... 29
Hình 11-Trang chủ.......................................................................................................... 30
Hình 12-Trang Recycling Locator.................................................................................. 31
Hình 13-Trang Recycle week campaign......................................................................... 32
Hình 14-Trang chi tiết cho 1 thơng tin............................................................................ 33
Hình 15-Trang Recycling locations................................................................................ 33
Hình 16-Trang chủ.......................................................................................................... 34
Hình 17-Trang News & Stories....................................................................................... 35
Hình 18-Trang enviroment & you................................................................................... 36
Hình 19-Trang chủ.......................................................................................................... 37
Hình 20-Trang travle....................................................................................................... 38
Hình 21-Trang danh mục................................................................................................ 38
Hình 22-Trang đăng kí.................................................................................................... 39
Hình 23-Lược đồ usecase phía người dùng cuối............................................................. 43
Hình 24-Lược đồ usecase phía người quản trị................................................................ 44
Hình 25-Lược đồ lớp – Model Layer.............................................................................. 63
Hình 26-Lược đồ tuần tự View home page..................................................................... 64
Hình 27-Lược đồ tuần tự Search product........................................................................ 64

Hình 28-Lược đồ tuần tự View product detail................................................................. 65
Hình 29-Lược đồ tuần tự Buy product............................................................................ 66
Hình 30-Lược đồ tuần tự Register.................................................................................. 67
Hình 31-Lược đồ tuần tự Login...................................................................................... 67


Hình 32-Lược đồ tuần tự Update info............................................................................. 68
Hình 33-Lược đồ tuần tự Logout.................................................................................... 68
Hình 34-Lược đồ thực thể quan hệ................................................................................. 75
Hình 35-Hình ảnh giao diện trang chủ khách hàng......................................................... 85
Hình 36-Hình ảnh trang chi tiết sản phẩm...................................................................... 87
Hình 37-Hình ảnh trang giao diện đăng nhập khách hàng.............................................. 88
Hình 38-Hình ảnh trang giao diện đăng ký..................................................................... 89
Hình 39-Hình ảnh trang giao diện trang tin tức.............................................................. 91
Hình 40-Hình ảnh trang giao diện theo danh mục 1 loại................................................. 93
Hình 41-Hình ảnh trang giao diện giỏ hàng.................................................................... 94
Hình 42-Hình ảnh trang giao diện thơng tin đặt hàng..................................................... 95
Hình 43-Hình ảnh trang giao diện thơng tin đơn hàng.................................................... 96
Hình 44-Hình ảnh trang giao diện quản lý đơn hàng đã mua.......................................... 98
Hình 45-Hình ảnh trang giao diện chi tiết hóa đơn......................................................... 99
Hình 46-Hình ảnh trang giao diện đăng nhập admin....................................................100
Hình 47-Hình ảnh trang giao diện chủ admin...............................................................101
Hình 48-Hình ảnh trang giao diện danh sách 1 loại sản phẩm......................................103
Hình 49-Hình ảnh trang giao diện thêm sản phẩm........................................................104
Hình 50-Hình ảnh trang giao diện xóa sản phẩm..........................................................106
Hình 51-Hình ảnh trang giao diện trang thống kê.........................................................107


DANH MỤC BẢNG BIỂU
Bảng 1-Bảng so sánh giữa RDBMS và MongoDB......................................................... 11

Bảng 2-Bảng đặc tả use case view home page................................................................ 45
Bảng 3-Bảng đặc tả use case register.............................................................................. 46
Bảng 4-Bảng đặc tả use case search product................................................................... 47
Bảng 5-Bảng đặc tả use case view product detail........................................................... 48
Bảng 6-Bảng đặc tả use case view news detail............................................................... 48
Bảng 7-Bảng đặc tả use case login.................................................................................. 49
Bảng 8-Bảng đặc tả use case login with Facebook......................................................... 50
Bảng 9-Bảng đặc tả use case login with Google............................................................. 51
Bảng 10-Bảng đặc tả use case View user info................................................................. 52
Bảng 11-Bảng đặc tả use case update user info............................................................... 53
Bảng 12-Bảng đặc tả use case add product..................................................................... 54
Bảng 13-Bảng đặc tả use case update products info....................................................... 54
Bảng 14-Bảng đặc tả use case delete products................................................................ 55
Bảng 15-Bảng đặc tả use case add news......................................................................... 56
Bảng 16-Bảng đặc tả use case update news info............................................................. 57
Bảng 17-Bảng đặc tả use case delete news..................................................................... 58
Bảng 18-Bảng đặc tả use case buy product..................................................................... 60
Bảng 19-Bảng đặc tả use case Chat................................................................................ 60
Bảng 20-Bảng đặc tả use case logout.............................................................................. 61
Bảng 21-Bảng đặc tả use case Statistic (Website owner)................................................ 62
Bảng 22-Bảng đặc tả use case add employee.................................................................. 62
Bảng 23-Mô tả chi tiết bảng dữ liệu Authorization......................................................... 76
Bảng 24-Mô tả chi tiết bảng dữ liệu User....................................................................... 77
Bảng 25-Mô tả chi tiết bảng dữ liệu NewsCategory....................................................... 78
Bảng 26-Mô tả chi tiết bảng dữ liệu ProductCategory.................................................... 78
Bảng 27-Mô tả chi tiết bảng dữ liệu Product.................................................................. 79
Bảng 28-Mô tả chi tiết bảng dữ liệu News...................................................................... 81
Bảng 29-Mô tả chi tiết bảng dữ liệu Conversation.......................................................... 81
Bảng 30-Mô tả chi tiết bảng dữ liệu Department............................................................ 81
Bảng 31-Mô tả chi tiết bảng dữ liệu Employee............................................................... 82



Bảng 32-Bảng mô tả chi tiết các đối tượng trên giao diện trang chủ..............................86
Bảng 33-Bảng mô tả chi tiết các đối tượng trên giao diện trang chi tiết sản phẩm.........87
Bảng 34-Bảng mô tả chi tiết các đối tượng trên giao diện trang đăng nhập khách hàng . 88

Bảng 35-Bảng mô tả chi tiết các đối tượng trên giao diện trang đăng ký khách hàng.....89
Bảng 36-Bảng mô tả chi tiết các đối tượng trên giao diện trang tin tức..........................92
Bảng 37-Bảng mô tả chi tiết các đối tượng trên giao diện trang danh mục 1 loại sản
phẩm............................................................................................................................... 93
Bảng 38-Bảng mô tả chi tiết các đối tượng trên giao trang giỏ hàng..............................94
Bảng 39-Bảng mô tả chi tiết các đối tượng trên giao diện trang thông tin đặt hàng........95
Bảng 40-Bảng mô tả chi tiết các đối tượng trên trang thông tin đặt hàng.......................97
Bảng 41-Bảng mô tả chi tiết các đối tượng trên giao diện trang danh sách đơn đã đặt...98
Bảng 42-Bảng mô tả chi tiết các đối tượng trên giao diện trang chi tiêt hóa đơn............99
Bảng 43-Bảng mơ tả chi tiết các đối tượng trên giao diện trang đăng nhập admin.......100
Bảng 44-Bảng mô tả chi tiết các đối tượng trên giao diện trang chủ admin..................102
Bảng 45-Bảng mô tả chi tiết các đối tượng trên giao diện trang danh sách 1 loại sản
phẩm............................................................................................................................. 104
Bảng 46-Bảng mô tả chi tiết các đối tượng trên giao diện trang thêm sản phẩm..........105
Bảng 47-Bảng mô tả chi tiết các đối tượng trên giao diện trang sửa sản phẩm.............106
Bảng 48-Bảng mô tả chi tiết các đối tượng trên giao diện trang thống kê....................107


KHĨA LUẬN TỐT NGHIỆP – CƠNG NGHỆ THƠNG TIN

PHẦN 1: PHẦN MỞ ĐẦU
1.
-


TÍNH CẤP THIẾT ĐỀ TÀI
Với thực trạng hiện nay mơi trường sống có tầm ảnh hưởng rất quan trọng.

Mọi cơng việc, cơng nghệ có ngày đổi mới, phát triển nhưng môi trường sống càng
ngày lại càng đi xuống thì cũng như chúng ta đang dần hủy hoại chính cuộc sống
của mình
- Đặc biệt, bên cạnh sự phát triển của cơng nghệ thì mơi trường sống lại ít
được

quan tâm. Trong khi đó mơi trường sống là cần thiết là nơi bắt đầu từ tất cả để học
tập, làm việc. Để mọi người có thể vừa đổi mới theo xu hướng công nghệ mà cũng
vừa đề cao tầm quan trọng của môi trường sống hằng ngày. Chúng em quyết định
làm một trang web bán các sản phẩm thân thiện với môi trường cũng như thông báo
bằng những tin tức mới nhất được cập nhập về môi trường sống xung quanh. Từ đó
mọi người sẽ nắm những thơng tin nhanh hơn, và ý thức hơn.
-

Vậy nên mọi người hãy thử dùng các sản phẩm thân thiện với môi trường

hằng ngày. Hay muốn biết và yêu môi trường chúng ta sống. Để đáp ứng và truyền
tải yêu cầu của khách hàng đều sẽ thực hiện một cách nhanh chóng, khơng mất
nhiều thời gian chờ đợi như trước đây cần một trang web về mơi trường.
2.

MỤC TIÊU CỦA ĐỀ TÀI


Tìm hiểu các cơng nghệ liên quan đến đề tài như:




+

Tìm hiểu HTML5, CSS3

+

Tìm hiểu Javascript, Bootstrap

+

Tìm hiểu Frameword Express

+

Tìm hiểu kỹ thuật NodeJS

+

Thư viện EJS

+

Tìm hiểu MongoDb Atlas

+

Tìm hiểu chứng thực PassportJS và JWT

+


Tìm hiểu về thời gian thực Socket.io
Xây dựng website tìm bán sản phẩm có các chức

năng cơ bản: o Đăng ký/Đăng nhập/Đăng xuất.
1


KHĨA LUẬN TỐT NGHIỆP – CƠNG NGHỆ THƠNG TIN

o

Đăng nhập nhanh bằng Google/Facebook.

o

Quản lý tài khoản (Xem/Cập nhật thơng tin).

o

Tìm kiếm sản phẩm có sẵn. Nhận thơng báo khi khơng tìm thấy

sản phẩm.
o

Xem chi tiết sản phẩm.

o

Xem chi tiết tin tức về môi trường.


o Chat online, tương tác giữa người dùng với người dùng, giữa
người
dùng với người quản lý trang web.

3.

o

Xem sản phẩm giỏ hàng.

o

Tạo sản phẩm, chỉnh sửa sản phẩm vào website.

o

Tạo tin tức, chỉnh sửa tin tức vào website.

o

Cập nhật sản phẩm, tin tức.

o

Quản lý tin tức.

o

Quản lý sản phẩm.


o

Thống kê.

o

Đánh giá sản phẩm.

o

Đặt hàng, quản lý bán hàng.

o

Lọc sản phẩm theo giá, tên sản phẩm.

CÁCH TIẾP CẬN VÀ PHƯƠNG PHÁP

NGHIÊN CỨU 3.1. Đối tượng nghiên cứu


Công nghệ Express, NodeJS, MongoDb Atlas.



Ngôn ngữ: Javascript.




Các thư viện hỗ trợ:
o

EJS.

 Lĩnh vực mà website phát triển: Bán sản phẩm thân thiện với mơi
trường.


Mơ hình triển khai: Mơ hình MVC

3.2. Phạm vi nghiên cứu
 Phạm vi nghiên cứu hướng đến các mơ hình mua bán sản phẩm thân thiện
với mơi trường


2


KHĨA LUẬN TỐT NGHIỆP – CƠNG NGHỆ THƠNG TIN

4.

KẾT QUẢ DỰ KIẾN ĐẠT ĐƯỢC

 Nghiên cứu hiểu rõ các thành phần cơ bản của cơng nghệ như: Express,
NodeJS, Mongodb Atlas


Tìm hiểu ngôn ngữ: Javascript.


 Sử dụng công nghệ xây dựng thành công website bán các sản phẩm thân
thiện với môi trường.
 Phát triển đầy đủ các chức năng cho người dùng cuối như:đăng ký, đăng
nhập

bằng email, đăng nhập bằng Google/Facebook, quản lý tài khoản, xem danh
mục sản phẩm, tìm kiếm sản phẩm, lọc sản phẩm theo giá, xem chi tiết sản
phẩm, xem tin tức, mua hàng.
 Phát triển đầy đủ các tính năng cho quản trị viên: quản lý sản phẩm, quản lý
tin tức, quản lý thông tin khách hàng, nhân viên.
 Phát triển các chức năng quản trị cho website như: quản lý người dùng, quản
lý sản phẩm, tin tức, thống kê, báo cáo.

3


KHĨA LUẬN TỐT NGHIỆP – CƠNG NGHỆ THƠNG TIN

PHẦN 2: PHẦN NỘI DUNG
CHƯƠNG 1: CƠ SỞ LÝ THUYẾT
1.

TÌM HIỂU CƠNG

NGHỆ 1.1. Tìm hiểu
Javascript
1.1.1. Khái niệm Javascript



JavaScript là một ngơn ngữ lập trình đa nền tảng (cross-

platform), ngơn ngữ lập trình kịch bản, hướng đối tượng. JavaScript là
một ngôn ngữ nhỏ và nhẹ (small and lightweight). Khi nằm bên trong
một môi trường (host environment), JavaScript có thể kết nối tới các
object của mơi trường đó và cung cấp các cách quản lý chúng (object).

JavaScript chứa các thư viện tiêu chuẩn cho các object, ví dụ như:
Array,
Date, và Math, và các yếu tố cốt lõi của ngơn ngữ lập trình như: tốn tử
(operators), cấu trúc điều khiển (control structures), và câu lệnh.
JavaScript có thể được mở rộng cho nhiều mục đích bằng việc bổ sung
thêm các object; Ví dụ:
o Client-side JavaScript - JavaScript phía máy khách, JavaScript được
mở rộng bằng cách cung cấp các object để quản lý trình duyệt và
Document Object Model (DOM) của nó. Ví dụ, phần mở rộng phía
máy khách cho phép một ứng dụng tác động tới các yếu tố trên một
trang HTML và phản hồi giống các tác động của người dùng như
click chuột, nhập form và chuyển trang.
o Server-side JavaScript - JavaScript phía Server, JavaScript được mở
rộng bằng cách cung cấp thêm các đối tượng cần thiết để chạy
JavaScript trên máy chủ. Ví dụ, phần mở rộng phía server này cho
phép ứng dụng kết nối với cơ sở dữ liệu (database), cung cấp thông
tin một cách liên tục từ một yêu cầu tới phần khác của ứng dụng, hoặc
thực hiện thao tác với các tập tin trên máy chủ.


4



KHĨA LUẬN TỐT NGHIỆP – CƠNG NGHỆ THƠNG TIN

1.1.2. Tiêu chuẩn ECMAScript.


JavaScript được tiêu chuẩn hóa tại Ecma International — the

European association for standardizing information and communication
systems, Liên kết Châu Âu cho các tiêu chuẩn hóa hệ thống thơng tin và
truyền thông (ECMA trước đây là viết tắt cho the European Computer
Manufacturers Association) cung cấp một tiêu chuẩn hóa, nền tảng ngơn
ngữ lập trình mở quốc tế lên JavaScript. Phiên bản đã tiêu chuẩn hóa của
JavaScript được gọi là ECMAScript, làm việc giống với cái cách mà tất
cả ứng dụng đã được hỗ trợ theo tiêu chuẩn.


Các cơng ty có thể sử dụng tiêu chuẩn ngôn ngữ mở (open

standard language) để phát triển các implementation của JavaScript riêng
cho họ. Tiêu chuẩn ECMAScript là tài liệu nằm trong tiêu chuẩn ECMA262 (ECMA-262 specification). Xem New in JavaScript để biết thêm về
sự khác nhau giữa các phiên bản JavaScript cũng như sự khác nhau của
phiên bản tiêu chuẩn ECMAScript (ECMAScript specification editions).


Tiêu chuẩn ECMA-262 cũng đã được phê duyệt bởi ISO

(International Organization for Standardization) tại ISO-16262. Bạn cũng
có thể tìm tiêu chuẩn trên the Ecma International website. Tiêu chuẩn
ECMAScript không bao gồm các mơ tả cho Document Object Model
(DOM), nó được tiêu chuẩn hóa bởi World Wide Web Consortium

(W3C).

DOM định nghĩa cách mà các đối tượng trong HTML tiếp xúc
với các
đoạn script của bạn. Để có được một cảm nhận tốt hơn về các công nghệ
khác nhau được sử dụng khi lập trình với JavaScript, hãy tham khảo bài
viết tổng quan về cơng nghệ JavaScript [1].
1.2. Tìm hiểu NodeJS
1.2.1. Khái niệm NodeJS.


Node.js là một mã nguồn mở, một môi trường cho các máy chủ

và ứng dụng mạng. Node.js sử dụng Google V8 JavaScript engine để
thực thi mã, và một tỷ lệ lớn các mô-đun cơ bản được viết bằng
JavaScript.


×