Tải bản đầy đủ (.pdf) (50 trang)

XÂY DỰNG WEBSITE THƯƠNG MẠI ĐIỆN TỬ TÍCH HỢP MACHINE LEARNING PHÂN TÍCH BÌNH LUẬN KHÁCH HÀNG

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 (2.17 MB, 50 trang )

ĐẠI HỌC ĐÀ NẴNG
TRƯỜNG ĐẠI HỌC BÁCH KHOA
KHOA CÔNG NGHỆ THÔNG TIN

ĐỒ ÁN TỐT NGHIỆP
NGÀNH: CÔNG NGHỆ THÔNG TIN
CHUYÊN NGÀNH: CÔNG NGHỆ PHẦN MỀM

ĐỀ TÀI:

XÂY DỰNG WEBSITE THƯƠNG MẠI
ĐIỆN TỬ TÍCH HỢP MACHINE LEARNING
PHÂN TÍCH BÌNH LUẬN KHÁCH HÀNG

Người hướng dẫn: TS. ĐẶNG HOÀI PHƯƠNG
Sinh viên thực hiện: NGUYỄN VĂN THÀNH
Số thẻ sinh viên: 102150132
Lớp:

15T2

Đà Nẵng, 12/2019


NHẬN XÉT CỦA NGƯỜI HƯỚNG DẪN
...........................................................................................................................................
...........................................................................................................................................
...........................................................................................................................................
...........................................................................................................................................
...........................................................................................................................................
...........................................................................................................................................


...........................................................................................................................................
...........................................................................................................................................
...........................................................................................................................................
...........................................................................................................................................
...........................................................................................................................................
...........................................................................................................................................
...........................................................................................................................................
...........................................................................................................................................
...........................................................................................................................................
...........................................................................................................................................
...........................................................................................................................................
...........................................................................................................................................
..........................................................................................
Đà Nẵng, ngày 19 tháng 12 năm 2019
Giảng viên hướng dẫn
TS. Đặng Hoài Phương


NHẬN XÉT CỦA NGƯỜI PHẢN BIỆN
...........................................................................................................................................
...........................................................................................................................................
...........................................................................................................................................
...........................................................................................................................................
...........................................................................................................................................
...........................................................................................................................................
...........................................................................................................................................
...........................................................................................................................................
...........................................................................................................................................
...........................................................................................................................................
...........................................................................................................................................

...........................................................................................................................................
...........................................................................................................................................
...........................................................................................................................................
...........................................................................................................................................
...........................................................................................................................................
...........................................................................................................................................
...........................................................................................................................................
...........................................................................................................................................
...............................................................................................
Đà Nẵng, ngày … tháng … năm 2019


PHIẾU DUYỆT ĐỒ ÁN TỐT NGHIỆP
I. Phần dành cho Sinh viên
1. Họ và tên: NGUYỄN VĂN THÀNH

2. Mã Sinh viên: 102150132

3.

Lớp: 15T2
4. Tên đề tài: Xây dựng website thương mại điện tử tích hợp machine learning phân
tích bình luận khách hàng
5. Số điện thoại: 0964076258
6. E-mail:
7. Họ và tên GVHD: TS. Đặng Hoài Phương
II. Phần dành cho Hội đồng
Nội dung đánh giá

STT


Kết luận

1.

Trình bày báo cáo theo đúng mẫu qui định của Khoa

2.

Khơng có sự sao chép nội dung báo cáo và chương trình
đã có

3.

Biên dịch mã nguồn và chạy được chương trình

4.

Có kịch bản thực hiện với dữ liệu thử nghiệm

5.

Kết quả thực hiện chương trình đúng theo báo cáo

6.

Có sự đóng góp, phát triển của tác giả trong đồ án

Ý


kiến

khác:

.........................................................................................................................................................................
.......................................................................................................................................................................................................

Kết luận:
cầu

 Đạt yêu cầu

 Phải sửa chữa lại

Đà Nẵng, ngày
Chủ tịch Hội đồng
(Ký và ghi họ tên)

 Không đạt yêu

tháng 12 năm 2019

Cán bộ duyệt kiểm tra
(Ký và ghi họ tên)


TÓM TẮT

Tên đề tài: Xây dựng website thương mại điện tử tích hợp machine learning phân tích
bình luận khách hàng

Sinh viên thực hiện: Nguyễn Văn Thành
Số thẻ SV: 102150132

Lớp: 15T2

Hiện nay nhu cầu mua bán online của con người ngày càng cao. Việc nắm bắt nhu cầu
của khách hàng về sản phẩm là cực kỳ quan trọng.
Hệ thống phân tích bình luận khách hàng trong website thương mại điện tử mang đến
cho chủ shop biết được liệu sản phẩm của mình có làm hài lịng khách hàng hay khơng
?


ĐẠI HỌC ĐÀ NẴNG

CỘNG HỊA XÃ HƠI CHỦ NGHĨA VIỆT NAM

Độc lập - Tự do - Hạnh phúc

TRƯỜNG ĐẠI HỌC BÁCH KHOA
KHOA CÔNG NGHỆ THÔNG TIN

NHIỆM VỤ ĐỒ ÁN TỐT NGHIỆP
Họ tên sinh viên: NGUYỄN VĂN THÀNH
Lớp: 15T2
Khoa: Công nghệ thông tin

Số thẻ sinh viên: 102150132
Ngành: Công nghệ thông tin

1. Tên đề tài đồ án:

Xây dựng website thương mại điện tử tích hợp machine learning phân tích bình
luận khách hàng
2. Đề tài thuộc diện: ☐ Có ký kết thỏa thuận sở hữu trí tuệ đối với kết quả thực hiện
3. Các số liệu và dữ liệu ban đầu:
Khơng có.
4. Nội dung các phần thuyết minh và tính tốn:
Nội dung của thuyết minh gồm:
Mở đầu: Phần mở đầu của luận văn, giới thiệu về nhu cầu thực tế và lý do thực
hiện đề tài, đồng thời giới thiệu sơ lược về đề tài và mục tiêu phải đạt được.
Chương 1. Cơ sở lý thuyết: trình bày những lý thuyết học được và đã áp dụng vào
hệ thống.
Chương 2. Phân tích và thiết kế: trình bày các hồ sơ phân tích và hồ sơ thiết kế
trong xây dựng hệ thống và luồng hoạt động của hệ thống.
Chương 3. Triển khai và đánh giá kết quả: mô tả cách cài đặt, vận hành hệ thống
và đánh giá kết quả đạt được.
5. Các bản vẽ, đồ thị ( ghi rõ các loại và kích thước bản vẽ ):
Khơng có.
6. Họ tên người hướng dẫn: TS. ĐẶNG HOÀI PHƯƠNG
7. Ngày giao nhiệm vụ đồ án:
……../……./ 2019
8. Ngày hoàn thành đồ án:
19 / 12 / 2019
Đà Nẵng, ngày
Trưởng Bộ mơn Mạng máy tính &
truyền thơng
TS. Phạm Minh Tuấn

tháng 12 năm 2019

Người hướng dẫn


TS. Đặng Hoài Phương


LỜI CẢM ƠN
Em xin gửi lời cảm ơn chân thành và sâu sắc đến các thầy cô trong Khoa Công
nghệ thông tin, cũng như tất cả các thầy cô trong trường Đại học Bách khoa – Đại học
Đà Nẵng đã dìu dắt, dạy dỗ và truyền đạt kiến thức, kinh nghiệm quý báu của mình
trong suốt quá trình em học tập và nghiên cứu tại trường.
Em xin bày tỏ tình cảm và lòng biết ơn chân thành tới thầy giáo TS. Đặng Hoài
Phương, người đã từng bước hướng dẫn, giúp đỡ tận tình và tạo điều kiện thuận lợi
nhất cho em trong quá trình thực hiện đồ án tốt nghiệp của mình. Nhờ đó em đã hồn
thành đồ án đúng tiến độ và tích lũy cho mình nhiều kiến thức q báu.
Trong q trình thực hiện chắc hẳn sẽ khơng tránh khỏi những thiếu sót nhất
định, em rất mong nhận được sự thơng cảm, góp ý và tận tình chỉ bảo của quý Thầy
Cô cũng như tất cả các bạn để đề tài được hoàn thiện hơn.
Một lần nữa em xin chân thành cảm ơn!
Nguyễn Văn Thành

i


CAM ĐOAN

Em xin cam đoan:
1. Nội dung trong đồ án này là do em thực hiện dưới sự hướng dẫn trực tiếp của
Thầy Đặng Hoài Phương
2. Các tham khảo dùng trong đồ án đều được trích dẫn rõ ràng tên tác giả, tên cơng
trình, thời gian, địa điểm cơng bố.
Nếu có những sao chép khơng hợp lệ, vi phạm quy chế đào tạo, em xin chịu hoàn

toàn trách nhiệm.
Đà Nẵng, ngày 19 tháng 12 năm 2019
Sinh viên thực hiện

Nguyễn Văn Thành

ii


MỤC LỤC
CAM ĐOAN ............................................................................................................... ii
DANH SÁCH CÁC HÌNH VẼ .................................................................................... v
GIỚI THIỆU ĐỀ TÀI .................................................................................................. 1
1. Lý do chọn đề tài ................................................................................................. 1
2. Mục đích của đề tài ............................................................................................. 1
4. Phạm vi sử dụng đề tài ........................................................................................ 2
5. Bố cục của đề tài ................................................................................................. 2
CHƯƠNG I: CƠ SỞ LÝ THUYẾT VÀ CƠNG CỤ SỬ DỤNG ................................. 3
1.1. Các cơng nghệ sử dụng ..................................................................................... 3
1.1.1. Tổng quan về #C, .NET CORE Framework và Entity Framework .............. 3
1.1.2. ReactJS ....................................................................................................... 6
1.1.3. Model View Controller ............................................................................... 8
1.2. TỔNG QUAN VỀ RESTful API .................................................................... 14
CHƯƠNG 2 : PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG .......................................... 17
2.1. Machine Learning trong bài tốn phân tích bình luận khách hàng ................... 17
2.2. Phân tích nghiệp vụ của hệ thống .................................................................... 18
2.2.1. Nghiệp vụ của quản trị viên ...................................................................... 18
2.2.2. Nghiệp vụ của quản lý .............................................................................. 18
2.3. Thiết kế hệ thống......................................................................................... 18
2.3.1. Các chức năng của khách ......................................................................... 18

2.3.2. Chức năng của quản lý shop ..................................................................... 19
2.3.3. Chức năng của người quản trị ................................................................... 19
2.4. Biểu đồ ca sử dụng ......................................................................................... 19
2.4.1. Biểu đồ ca sử dụng tổng quát của hệ thống ............................................... 19
2.4.2. Biểu đồ ca sử dụng của khách................................................................... 21
2.4.3. Biểu đồ ca sử dụng của Thành viên .......................................................... 21
2.4.4. Biểu đồ ca sử dụng của Quản lý ............................................................... 22
2.4.5. Biểu đồ ca sử dụng của quản trị viên ........................................................ 24
2.5. Đặc tả ca sử dụng ........................................................................................... 25
2.5.1. Đặc tả ca sử dụng đăng ký ........................................................................ 25
2.5.2. Đặc tả ca sử dụng đăng nhập ..................................................................... 25
2.5.3. Đặc tả ca sử dụng Quản lý tài khoản ......................................................... 26
2.5.4. Đặc tả ca sử dụng Tạo sản phẩm ............................................................... 26
2.5.5. Đặc tả ca sử dụng Tạo cửa hàng ................................................................ 27
iii


2.6. Biểu đồ lớp ..................................................................................................... 27
2.7. Biểu đồ hoạt động .......................................................................................... 28
2.7.1. Biểu đồ hoạt động của thành viên ............................................................. 28
2.7.2. Biểu đồ hoạt động của quản lý .................................................................. 29
2.7.3. Biểu đồ hoạt động của quản trị viên .......................................................... 30
2.8. Thiết kế cơ sở dữ liệu ..................................................................................... 31
2.8.1. Mơ hình thiết kế cơ sở dữ liệu ................................................................... 31
2.9. Kết chương ..................................................................................................... 31
CHƯƠNG 3 : TRIỂN KHAI VÀ ĐÁNH GIÁ ........................................................... 32
3.1. MÔI TRƯỜNG TRIỂN KHAI ........................................................................ 32
3.2. TRIỂN KHAI HỆ THỐNG ............................................................................. 32
3.3. Kết chương ..................................................................................................... 35
KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN .................................................................. 36

1. Kết quả đạt được ................................................................................................ 36
2. Hướng phát triển ................................................................................................ 36
TÀI LIỆU THAM KHẢO.......................................................................................... 37

iv


DANH SÁCH CÁC HÌNH VẼ VÀ BẢNG
Hình 1.1 Open-Source và Framework đa nền tảng .Net Core ...................................... 4
Hình 1.2 Các tầng Entity tác động vào ......................................................................... 5
Hình 1.3 LINQ và Entity Framework trong .Net Framework ...................................... 6
Hình 1.4 Sơ đồ vịng đời của component trong ReactJS ............................................... 8
Hình 1.5 Luồng chạy mơ mình MVC ........................................................................... 9
Hình 1.6 Client Server hoạt động ............................................................................... 10
Hình 1.7 Phương pháp Bow ...................................................................................... 11
Hình 1.8 Dự đốn về nghĩa của từ ............................................................................. 12
Hình 1.9 So sánh 2 mơ hình của word2vec ................................................................ 12
Hình 1.10 Mơ hình Skip-gram ................................................................................... 13
Hình 1.11 Mơ tả RESTful API ................................................................................... 14
Hình 1.12 Các phương thức HTTP của RESTful API ................................................ 15
Hình 1.13 Hoạt động của RESTful API ..................................................................... 16
Hình 2.1 Biểu đồ ca sử dụng tổng quát của hệ thống ................................................. 20
Hình 2.2 Biểu đồ ca sử dụng đăng ký tài khoản của khách ......................................... 21
Hình 2.3 Biểu đồ ca sử dụng quản lý tài khoản trong hệ thống. .................................. 21
Hình 2.4: Biểu đồ ca sử dụng để mua sản phẩm và bình luận. .................................... 22
Hình 2.5 Biểu đồ ca sử dụng quản lý danh mục sản phẩm .......................................... 22
Hình 2.6: Biểu đồ ca sử dụng quản lý sản phẩm ......................................................... 23
Hình 2.7 Biểu đồ ca sử dụng quản lý bình luận, đánh giá khách hàng ........................ 23
Hình 2.8 Biểu đồ ca sử dụng quản lý người dùng trong hệ thống .............................. 24
Hình 2.9 Biểu đồ ca sử dụng quản lý các cửa hàng trong hệ thống ............................. 24

Hình 2.15 Biểu đồ lớp của hệ thống .......................................................................... 27
Hình 2.16 Biểu đồ hoạt động các chức năng của thành viên. ..................................... 28
Hình 2.17 Biểu đồ hoạt động các chức năng của quản lý........................................... 29
Hình 2.18 Biểu đồ hoạt động các chức năng của quản trị viên ................................... 30
Hình 3.1 Màn hình đăng nhập .................................................................................... 32
Hình 3.2 Màn hình quản lý danh mục ........................................................................ 32
Hình 3.3 Màn hình quản lý shop ................................................................................ 33
v


Hình 3.4 Màn hình quản lý sản phẩm ......................................................................... 33
Hình 3.5 Màn hình quản lý user ................................................................................. 33
Hình 3.6 Màn hình public hiển thị danh sách cửa hàng .............................................. 34
Hình 3.7 Màn hình hiển thị trang chi tiết .................................................................... 34
Hình 3.7 Dữ liệu dùng để train mơ hình ..................................................................... 34
Hình 3.8 Màn hình coment và cho ra kết quả trực tiếp ............................................... 35
Bảng 2.11 Đặc tả ca sử dụng đăng nhập .................................................................... 25
Bảng 2.12: Đặc tả ca sử dụng quản lý tài khoản ........................................................ 26
Bảng 2.13: Đặc tả ca sử dụng tạo sản phẩm .............................................................. 26
Bảng 2.14: Đặc tả ca sử dụng tạo cửa hàng ............................................................... 27

vi


DANH SÁCH CÁC KÝ HIỆU, CHỮ VIẾT TẮT
Từ

Viết tắt của

Diễn giải


API

Application Programming Interface

Giao diện lập trình ứng dụng
Một dạng chuyển đổi cấu trúc dữ

RESTful

REpresentational State Transfer

liệu, một kiểu kiến trúc để viết
API

HTTP

Hypertext Transfer Protocol

Giao thức truyền tải siêu văn bản

MVC

Model-View-Controller

DB

Database

Cơ sở dữ liệu


HTML

HyperText Markup Language

Ngôn ngữ đánh dấu siêu văn bản

SGML

Standard Generalized Markup
Language

Một hệ thống tổ chức và gắn thẻ
yếu tố của một tài liệu

CSS

Cascading Style Sheets

Điều khiển cách hiện thị nội dung
trang web

W3C

World Wide Web Consutirum

Mơ hình - Giao diện - Bộ điều
khiển

Chuẩn được các nhà thiết kế

website sử dụng làm thước đo khi
thiết kế các website

UI

User Interface

Giao diện người dùng

DOM

Document Object Model

Mơ hình đối tượng tài liệu

SEO

Search Engine Optimization

Tối ưu hóa cơng cụ tìm kiếm

JSX

JavaScript XML

Một loại cú pháp mở rộng dành
cho ngôn ngữ JavaScript viết theo
kiểu XML

SQL


Structured Query Language

Ngôn ngữ truy vấn cấu trúc

Internet Information Services

Dịch vụ dành cho máy chủ chạy
Window nhằm cung cấp và phân

IIS

tán các thông tin lên mạng.

vii


Xây dựng website thương mại điện tử tích hợp machine learning phân tích bình luận khách hàng

GIỚI THIỆU ĐỀ TÀI

1. Lý do chọn đề tài
Thu thập thông tin phản hồi của khách hàng là một cách tuyệt vời giúp cho các
doanh nghiệp hiểu được điểm mạnh, điểm yếu trong sản phẩm, dịch vụ của mình, đồng
thời nhanh chóng nắm bắt được tâm ký và nhu cầu khách hàng để mang đến cho họ sản
phẩm, dịch vụ hoàn hảo nhất.
Ngày nay, với sự phát triển vượt bậc của khoa học và công nghệ, đặc biệt là sự bùng nổ
của Internet với các phương tiện truyền thông xã hội, thương mại điện tử,... đã cho phép
mọi người không chỉ chia sẻ thông tin trên đó mà cịn thể hiện thái độ, quan điểm của
mình đối với các sản phẩm, dịch vụ và các vấn đề xã hội khác. Vì vậy mà Internet đã

trở lên vô cùng quan trọng và là nguồn cung cấp một lượng thông tin vô cùng lớn và
quan trọng.
Thông qua những dữ liệu được cung cấp qua Internet:






Người dùng sử dụng nó để tìm kiếm, tham khảo trước khi đưa ra quyết định về sử
dụng một sản phẩm hay dịch vụ nào đó.
Các nhà cung cấp dịch vụ cũng có thể sử dụng những nguồn thơng tin này để đánh giá
về sản phẩm của mình, từ đó có thể đưa ra những cải tiến phù hợp hơn với người dùng,
mang lại lợi nhuận cao hơn, tránh các rủi ro đáng tiếc xảy ra. Đặc biệt, khi 1 doanh
nghiệp có 1 sản phẩm mới ra mắt thị trường thì việc lấy ý kiến phản hồi là vô cùng cần
thiết.
Các cơ quan chức năng có thể sử dụng những thơng tin này để tìm hiểu xem quan
điểm và thái độ của cộng đồng để có thể kịp thời sửa đổi, ban hành các chính sách cho
hợp lý hơn.
Vì những lí do trên, em đã quyết định chọn đề tài “Xây dựng website thương mại
điện tử tích hợp machine learning phân tích bình luận khách hàng” làm đề tài tốt
nghiệp của mình.

2. Mục đích của đề tài
“Xây dựng website thương mại điện tử tích hợp machine learning phân tích bình
luận khách hàng” với mục đích đưa lại cho doanh nghiệp cái nhìn tổng qt hơn về
sản phẩm của mình. Từ đó cho họ những quyết định chính xác để cải tiến chất lượng
sản phẩm để phù hợp hơn với nhu cầu thị trường.
3. Nội dung của đề tài
Những nội dung cần thực hiện để hồn thành đề tài bao gồm :

- Tìm hiểu bài tốn phân tích bình luận khách hàng trong thực tế
SVTH : Nguyễn Văn Thành

GVHD : TS. Đặng Hoài Phương

1


Xây dựng website thương mại điện tử tích hợp machine learning phân tích bình luận khách hàng

-

Phân tích và thiết kế hệ thống website thương mại điện tử tích hợp phân
tích bình luận

-

Thiết kế cơ sở dữ liệu cho hệ thống

-

Tìm hiểu và nghiên cứu, áp dụng các ngơn ngữ lập trình và cơng nghệ

-

như: C#, ReacJs, Python (Framework Django), API để xây dựng hệ
thống thương mại điện tử.
Quản lý CSDL bằng hệ quản trị CSDL SQL server

4. Phạm vi sử dụng đề tài

Ứng dụng được sử dụng cho các website bán hàng, bán đồ ăn, nước uống có nhu cầu
muốn biết, nắm bắt những nhu cầu thiết yếu của khách hàng. Từ đó đưa ra giải pháp
thích hợp.
5. Bố cục của đề tài
Đồ án được chia làm 3 chương chính:
Với chương thứ nhất đi vào tìm hiểu và nghiên cứu cơ sở lý thuyết để thực hiện áp
dụng vào đề tài. Tìm hiều cơng cụ và ngơn ngữ lập trình.
Trong chương thứ hai đi vào quá trình khảo sát hiện trạng thực tế, phân tích và
thiết kế hệ thống thơng tin, xác định các tác nhân chính của hệ thống, thiết kế và xây
dựng cơ sở dữ liệu.
Tiếp nối chương thứ hai, chương thứ ba sẽ đi vào quá trình triển khai hệ thống,
thực hiện xây dựng mã nguồn chương trình và chạy thử nghiệm.
Đề tài được đánh giá lại qua phần kết luận, đưa ra các đánh giá kết quả về những
vấn đề đã gải quyết, những vấn đề chưa giải quyết được và các giải pháp cho để cải
tiến, khắc phục những vấn đề đó.

SVTH : Nguyễn Văn Thành

GVHD : TS. Đặng Hoài Phương

2


Xây dựng website thương mại điện tử tích hợp machine learning phân tích bình luận khách hàng

CHƯƠNG I: CƠ SỞ LÝ THUYẾT VÀ CƠNG CỤ SỬ DỤNG

1.1.

Các cơng nghệ sử dụng


1.1.1. Tổng quan về #C, .NET CORE Framework và Entity Framework
C#
C# (hay C sharp) [1] là một ngôn ngữ lập trình đơn giản, được phát triển bởi đội
ngũ kỹ sư của Microsoft vào năm 2000, trong đó người dẫn đầu là Anders Hejlsberg
và Scott Wiltamuth.
C# là ngơn ngữ lập trình hiện đại, hướng đối tượng và nó được xây dựng trên nền
tảng của hai ngôn ngữ mạnh nhất là C++ và Java.
C# được thiết kế cho Common Language Infrastructure (CLI), mà gồm
Executable Code và Runtime Environment, cho phép chúng ta sử dụng các ngôn ngữ
high-level đa dạng trên các nền tảng và cấu trúc máy tính khác nhau.
C# với sự hỗ trợ mạnh mẽ của .NET Framework giúp cho việc tạo một ứng dụng
Windows Forms hay WPF (Windows Presentation Foundation), . . . trở nên rất dễ
dàng.
Ngoài những đặc điểm trên thì cịn một số ưu điểm nổi bật của C#:
 C# có cấu trúc khá gần gũi với các ngơn ngữ lập trình truyền thống, nên cũng khá
dể dàng tiếp cận và học nhanh với C#.
 C# có thể biên dịch trên nhiều nền tảng máy tính khác nhau.
C# được xây dựng trên nền tảng của C++ và Java nên nó được thừa hưởng những
ưu điểm của ngơn ngữ đó.
 C# là một phần của .NET Framework nên được sự chống lưng khá lớn đến từ bộ
phận này.
 C# có IDE Visual Studio cùng nhiều plug-in vơ cùng mạnh mẽ.


.NET CORE FRAMEWORK
ASP.NET Core [3] là một open-source mới và framework đa nền tảng (crossplatform) cho việc xây dựng những ứng dụng hiện tại dựa trên kết nối đám mây, giống
như web apps, IoT và backend cho mobile.

SVTH : Nguyễn Văn Thành


GVHD : TS. Đặng Hoài Phương

3


Xây dựng website thương mại điện tử tích hợp machine learning phân tích bình luận khách hàng

Ứng dụng ASP.NET Core có thể chạy trên .NET Core hoặc trên phiên bản đầy đủ của
.NET Framework. Nó được thiết kế để cung cấp và tối ưu development framework cho
những dụng cái mà được triển khai trên đám mây (clound) hoặc chạy on-promise.
Nó bao gồm các thành phần theo hướng module nhằm tối thiểu tài nguyên và chi phí
phát triển, như vậy bạn giữ lại được sự mềm giẻo trong việc xây dựng giải pháp của
bạn. Bạn có thể phát triển và chạy những ứng dụng ASP.NET Core đa nền tảng trên
Windows, Mac và Linux.
Đồng thời nó đã trở thành một mã nguồn mở. Đây là một thay đổi rất lớn và theo mình
là quan trọng nhất của ASP.NET Core. Điều mà trước đây khó có một lập trình viên
nào có thể nghĩ đến. Có lẽ đó cũng là một xu thế mà các ngơn ngữ lập trình hiện nay
đang hướng tới.
Với ASP.NET Core bạn đạt được những nền tảng cải tiến dưới đây:
 Hợp nhất việc xây dựng web UI và web APIs
 Tích hợp những client-side frameworks hiện đại và những luồng phát triển
 Hệ thống cấu hình dựa trên mơi trường đám mây thật sự
 Dependency injection được xây dựng sẵn









HTTP request được tối ưu nhẹ hơn
Có thể host trên IIS hoặc self-host trong process của riêng bạn
Được xây dựng trên .NET Core, hỗ trợ thực sự app versioning
Chuyển các thực thể, thành phần, module như những NuGet packages
Những công cụ mới để đơn giản hóa q trình phát triển web hiện đại
Xây dựng và chạy đa nền tảng(Windows, Mac và Linux)
Mã nguồn mở và tập trung vào cộng đồng.

Hình 1.1 Open-Source và Framework đa nền tảng .Net Core
SVTH : Nguyễn Văn Thành

GVHD : TS. Đặng Hoài Phương

4


Xây dựng website thương mại điện tử tích hợp machine learning phân tích bình luận khách hàng

ENTITY FRAMEWORK
Entity Framework (EF) [4] là một framework ánh xạ quan hệ đối tượng (ORM)
dành cho ADO.NET, là 1 phần của .NET Framework. EF cho phép các nhà phát
triển Web tương tác với dữ liệu quan hệ theo phương pháp hướng đối tượng đặc
trưng. Lợi ích lớn nhất của EF là giúp lập trình viên giảm thiểu việc lập trình mã
nguồn cần thiết để truy cập và tương tác với cơ sở dữ liệu. EF được Microsoft hỗ
trợ phát triển lâu dài và bền vững, vì vậy EF là 1 framework mạnh nhất hiện nay để
phát triển ứng dụng Web với sự hỗ trợ đơng đảo của các nhà phát triển Web.

Hình 1.2 Các tầng Entity tác động vào

LINQ
Một truy vấn là một diễn tả để lấy dữ liệu từ 1 nguồn dữ liệu nào đó. Các truy vấn
thường được dùng trong các ngơn ngữ truy vấn đặc trưng. Các ngôn ngữ truy vấn khác
nhau được phát triển khác nhau để áp dụng cho các nguồn dữ liệu khác nhau, ví dụ
SQL dùng cho cơ sở dữ liệu quan hệ và XQuery dùng cho XML. Vì vậy, các nhà phát
triển phải học các ngơn ngữ truy vấn cho mỗi dạng nguồn dữ liệu hoặc định dạng dữ
liệu. Do đó, Microsoft mới nghĩ ra việc xây dựng 1 ngơn ngữ truy vấn nào đó mà có
thể dùng cho tất cả nguồn dữ liệu, tất cả các định dạng dữ liệu khác nhau. Ngôn ngữ
truy vấn đó là LINQ.
SVTH : Nguyễn Văn Thành

GVHD : TS. Đặng Hoài Phương

5


Xây dựng website thương mại điện tử tích hợp machine learning phân tích bình luận khách hàng

LINQ [5] (Language Integrated Query, tạm dịch là ngơn ngữ truy vấn tích hợp
đưa ra 1 mơ hình bền vững để hoạt động với các dạng nguồn dữ liệu và định dạng dữ
liệu khác nhau. Trong LINQ, bạn phải làm quen với chuyện làm việc với các đối
tượng (objects). LINQ cho phép dùng các đoạn code đơn giản để truy vấn và chuyển
đổi dữ liệu trong các tài liệu XML, cơ sở dữ liệu SQL, tập dữ liệu ADO.NET, các tập
hợp .NET, và bất kỳ định dạng nào mà LINQ provider hỗ trợ.
Ba thành phần của 1 hoạt động truy vấn :
Tất cả các hoạt động truy vấn LINQ đều bao gồm 3 tác vụ:
 Kết nối với nguồn dữ liệu (data source)
 Tạo truy vấn
 Thực thi truy vấn


Hình 1.3 LINQ và Entity Framework trong .Net Framework
1.1.2. ReactJS
React (Hay ReactJS, React.js) [6] là một thư viện Javascript mã nguồn mở để xây
dựng các thành phần giao diện có thể tái sử dụng. Nó được tạo ra bởi Jordan Walke,
một kỹ sư phần mềm tại Facebook. Người bị ảnh hưởng bởi XHP (Một nền tảng thành
phần HTML cho PHP). React lần đầu tiên được triển khai cho ứng dụng Newsfeed của
Facebook năm 2011, sau đó được triển khai cho Instagram.com năm 2012. Nó được
mở mã nguồn (open-sourced) tại JSConf US tháng 5 năm 2013.
SVTH : Nguyễn Văn Thành

GVHD : TS. Đặng Hoài Phương

6


Xây dựng website thương mại điện tử tích hợp machine learning phân tích bình luận khách hàng

 Đặc tính của ReactJS:
 Tư tưởng của ReactJS là xây dựng lên các components có tính tái sử dụng, dễ dàng
cho việc chia nhỏ vấn đề, testing. Nó giúp chúng ta dễ dàng quản lý, mở rộng hệ
thống, điều này nếu là Angular JS thì địi hỏi cấu trúc, cách viết code phải thật tối ưu.
 ReactJS luôn giữ các components ở trạng thái stateless (nhiều nhất có thể) khiến ta dễ
dàng quản lí bởi nó chẳng khác gì một trang static HTML. Bản thân các components
này khơng có trạng thái (state) nó nhận đầu vào từ bên ngoài và chỉ hiển thị ra dựa vào
các đầu vào đó, điều này giải thích tại sao nó mang tính tái sử dụng và dễ dàng cho
việc test.
 Các đặc trưng của ReactJS
Component:
 Là một đoạn mã ngắn có ý nghĩa thể hiện một chức năng hay đối tượng nhất định, có
thể tái sử dụng.

 Một ứng dụng React có thể sử dụng hàng chục, hoặc hàng trăm các component liên kết
và tương tác với nhau.
 Ta có thể tạo ra một component bằng cách extends từ Component như sau:
 Phương thức quan trọng nhất là render(), phương thức này được trigger khi
component đã sẵn sàng để được render lên trên trang. Trong hàm này, sẽ trả về mô tả
cho việc bạn muốn React render cái gì lên trên trang. Hàm render chính là mơ tả cụ thể
của giao diện người dùng tại bất cứ thời điểm nào. Vì thế nếu dữ liệu thay đổi, React
sẽ quan tâm đến việc cập nhật lại giao diện với dữ liệu tương ứng.
Props:
 Thông tin được truyền từ component này sang component khác được gọi là props.
 Props của một component có thể là một object, function, string, number …. Nó chứa
thơng tin về thành phần đó.
State:
 Một component trong React có 2 cách để lấy thơng tin props và state. Không như
props, state của 1 component không được truyền từ bên ngoài vào. Một component sẽ
tự quyết định state của chính nó. Để tạo ra state cho component, ta sẽ phải khai báo nó
trong hàm constructor.
 This.state ở đây là một đối tượng. Để truy cập đến các state ta sử dụng cú pháp:
this.state.name_of_property. Và cách phổ biến để thay đổi state của một component là
dùng hàm setState().
LifeCycle:

SVTH : Nguyễn Văn Thành

GVHD : TS. Đặng Hoài Phương

7




×