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

Khóa luận tốt nghiệp xây dựng ứng dụng hỗ trợ học tiếng anh qua bài hát

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 (273.34 KB, 68 trang )

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

TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN
KHOA CÔNG NGHỆ PHẦN MỀM

NGUYỄN THÀNH CÔNG – 15520071
LƯU NGUYỄN KHẢI HỒN - 15520249

KHĨA LUẬN TỐT NGHIỆP

XÂY DỰNG ỨNG DỤNG HỖ TRỢ HỌC TIẾNG ANH
QUA LỜI BÀI HÁT
BUILDING AN APPLICATION TO SUPPORT LEARNING
ENGLISH BY SONGS

KỸ SƯ NGÀNH KỸ THUẬT PHẦN MỀM

TP. HỒ CHÍ MINH, 2020


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

TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN
KHOA CÔNG NGHỆ PHẦN MỀM

NGUYỄN THÀNH CÔNG – 15520071
LƯU NGUYỄN KHẢI HỒN - 15520249

KHĨA LUẬN TỐT NGHIỆP

XÂY DỰNG ỨNG DỤNG HỖ TRỢ HỌC TIẾNG ANH


QUA LỜI BÀI HÁT
BUILDING AN APPLICATION TO SUPPORT LEARNING
ENGLISG BY SONGS

KỸ SƯ NGÀNH KỸ THUẬT PHẦN MỀM

GIẢNG VIÊN HƯỚNG DẪN
TS. NGUYỄN HÀ GIANG
ThS. NGUYỄN THỊ THANH TRÚC

TP. HỒ CHÍ MINH, 2020

THƠNG TIN HỘI ĐỒNG CHẤM KHÓA LUẬN TỐT NGHIỆP


Hội đồng chấm khóa luận tốt nghiệp, thành lập theo Quyết định số ……………………
ngày ………………….. của Hiệu trưởng Trường Đại học Công nghệ Thông tin.
1. …………………………………………. – Chủ tịch.
2. …………………………………………. – Thư ký.
3. …………………………………………. – Ủy viên.
4. …………………………………………. – Ủy viên.
ĐẠI HỌC QUỐC GIA TP. HỒ CHÍ MINH
Độc Lập - Tự Do - Hạnh Phúc
TRƯỜNG ĐẠI HỌC
CÔNG NGHỆ THÔNG TIN
CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM

TP. HCM, ngày…..tháng…..năm……..

NHẬN XÉT KHĨA LUẬN TỐT NGHIỆP

(CỦA CÁN BỘ HƯỚNG DẪN)

Tên khóa luận:
XÂY DỰNG ỨNG DỤNG HỌC TIẾNG ANH QUA LỜI BÀI HÁT
Nhóm SV thực hiện: Cán bộ hướng dẫn: Nguyễn Thành Công 15520071 TS. Nguyễn Hà
Giang Lưu Nguyễn Khải Hoàn 15520249 ThS.Nguyễn Thị Thanh Trúc
Đánh giá Khóa luận
1. Về cuốn báo cáo:
Số trang _______ Số chương _______
Số bảng số liệu _______ Số hình vẽ _______
Số tài liệu tham khảo _______ Sản phẩm _______
Một số nhận xét về hình thức cuốn báo cáo:
…………………………………………………………………………………………………………
…………………………………………………………………………………………………………
…………………………………………………………………………………………………………
………………………………………………………………………………………………2. Về nội
dung nghiên cứu:


…………………………………………………………………………………………………………
…………………………………………………………………………………………………………
…………………………………………………………………………………………………………
………………………………………………………………………………………………3.

Về

chương trình ứng dụng:
…………………………………………………………………………………………………………
…………………………………………………………………………………………………………
…………………………………………………………………………………………………………

………………………………………………………………………………………………4. Về thái
độ làm việc của sinh viên:
…………………………………………………………………………………………………………
…………………………………………………………………………………………………………
…………………………………………………………………………………………………Đánh
giá chung:
…………………………………………………………………………………………………………
…………………………………………………………………………………………………………
…………………………………………………………………………………………………Điểm
từng sinh viên:
Nguyễn Thành Công: ………. /10
Lưu Nguyễn Khải Hoàn: ………. /10

Người nhận xét
ĐẠI HỌC QUỐC GIA TP. HỒ CHÍ MINH

(Ký tên và ghi rõ họ tên)
Độc Lập - Tự Do - Hạnh Phúc

TRƯỜNG ĐẠI HỌC
CÔNG NGHỆ THÔNG TIN
CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM

TP. HCM, ngày…..tháng…..năm……..

NHẬN XÉT KHÓA LUẬN TỐT NGHIỆP


(CỦA CÁN BỘ PHẢN BIỆN)


Tên khóa luận:
XÂY DỰNG ỨNG DỤNG HỌC TIẾNG ANH QUA LỜI BÀI HÁT
Nhóm SV thực hiện: Cán bộ phản biện: Nguyễn Thành Công 15520071
Lưu Nguyễn Khải Hồn 15520249
Đánh giá Khóa luận
5. Về cuốn báo cáo:
Số trang _______ Số chương _______
Số bảng số liệu _______ Số hình vẽ _______
Số tài liệu tham khảo _______ Sản phẩm _______
Một số nhận xét về hình thức cuốn báo cáo:
…………………………………………………………………………………………………………
…………………………………………………………………………………………………………
…………………………………………………………………………………………………6.

Về

nội dung nghiên cứu:
………………………………………………………………………………………………………
…………………………………………………………………………………………………………
…………………………………………………………………………………………………………
…………………………………………………………………………………………………7.

Về

chương trình ứng dụng:
…………………………………………………………………………………………………………
…………………………………………………………………………………………………………
…………………………………………………………………………………………………………
………………………………………………………………………………………………8. Về thái
độ làm việc của sinh viên:

…………………………………………………………………………………………………………


…………………………………………………………………………………………………………
…………………………………………………………………………………………………………
………………………………………………………………………………………………Đánh giá
chung:
…………………………………………………………………………………………………………
…………………………………………………………………………………………………………
…………………………………………………………………………………………………Điểm
từng sinh viên:
Nguyễn Thành Công: ………. /10
Lưu Nguyễn Khải Hoàn: ………. /10

Người nhận xét
(Ký tên và ghi rõ họ tên)

LỜI CẢM ƠN
Trước hết, chúng em xin gửi lời cảm ơn đến ban giám hiệu, quý thầy cô của
trường Đại học Công nghệ Thông tin, đặc biệt là các thầy cô trong khoa Công Nghệ
Phần Mềm đã cung cấp cho chúng em những hành trang kiến thức cần thiết, bổ ích và
phong phú trong những năm học tập tại trường.
Chúng em cũng xin bày tỏ lời cảm ơn chân thành đến cô Nguyễn Thị Thanh
Trúc - người đã dành nhiều thời gian hướng dẫn và giúp đỡ chúng em trong suốt q
trình làm khóa luận để chúng em có thể hồn thành tốt khóa luận tốt nghiệp này.
Chúng em đã nỗ lực rất nhiều để làm khóa luận hồn thiện nhất có thể nhưng
chắc chắn khó tránh khỏi những thiếu sót. Nên chúng em kính mong q thầy cơ thơng
cảm và tận tình chỉ bảo để chúng em cải thiện tốt hơn.
Sau cùng, chúng em kính chúc q thầy cơ thật nhiều sức khỏe và niềm tin để
thực hiện sứ mệnh cao đẹp của mình và truyền đạt kiến thức cho các thế hệ sau này.


Chúng em trân trọng cảm ơn!
ĐẠI HỌC QUỐC GIA TP. HỒ CHÍ MINH

TRƯỜNG ĐẠI HỌC


CƠNG NGHỆ THƠNG TIN
CỘNG HỊA XÃ HỘI CHỦ NGHĨA VIỆT NĐộc

Lập - Tự Do - Hạnh Phúc


ĐỀ CƯƠNG CHI TIẾT
TÊN ĐỀ TÀI TIẾNG VIỆT: Xây dựng ứng dụng hỗ trợ học tiếng anh qua lời bài
hát
TÊN ĐỀ TÀI TIẾNG ANH: Building an application to support learning English by
music.
Cán bộ hướng dẫn:
- TS. Nguyễn Hà Giang
- ThS. Nguyễn Thị Thanh Trúc
Thời gian thực hiện: Từ ngày 23/3/2020 đến tháng 13/7/2020
Sinh viên thực hiện:
- Nguyễn Thành Công – 15520071
- Lưu Nguyễn Khải Hoàn – 15520249
Nội dung đề tài
Tổng quan đề tài:
Tiếng anh là ngôn ngữ phổ biến và được sử dụng nhiều nhất trên thế giới nên nó được
xem như là ngôn ngữ chung của thế giới, dễ dàng xóa bỏ mọi rào cản ngơn ngữ. Rất nhiều
tài liệu, kiến thức giá trị đều được lưu lại bằng tiếng anh. Vì vậy học tiếng anh đem lại lợi



ích rất lớn. Hiện có rất nhiều phương pháp học tiếng anh được sáng tạo như: đọc báo tiếng
anh, xem phim tiếng anh, ra công viên chỉ đường cho người nước ngồi, … và nhiều
phương pháp khác nhằm mục đích giúp người học dễ dàng tiếp cận, hiểu nhanh và đặc
biệt không gây dễ nhàm chán, dễ bỏ cuộc như các phương pháp truyền thống.
Hiện nay, công nghệ đang phát triển mạnh mẽ kéo theo các thiết bị công nghệ ngày
càng nhỏ gọn và thơng minh hơn trong số đó có điện thoại di động. Hầu như hiện nay ai
cũng dễ dàng sở hữu cho mình một chiếc điện thoại di động vì những lợi ích nó mang lại
như sự nhỏ gọn, tiện lợi, giá thành rẻ, dễ lưu trữ thông tin, dễ cập nhật tin tức, dễ liên lạc,
giao tiếp với người khác, … Vậy nên điện thoại di động trở nên cực kì phổ biến và hữu
ích. Chính vì vậy, áp dụng cơng nghệ cho việc học tiếng anh là phương pháp hiệu quả.
Âm nhạc là thứ làm cho con người trở nên sống động, là thứ để con người biểu lộ
cảm xúc. Âm nhạc có rất nhiều loại phù hợp chọ mọi lứa tuổi nên hầu hết chúng ta ai cũng
thích âm nhạc và âm nhạc khơng làm ta nhàm chán. Vậy nên học tiếng anh bằng âm nhạc
là phương pháp hiệu quả.
Kết hợp hai yếu tố trên là công nghệ và âm nhạc vào việc học tiếng anh sẽ là phương
pháp sáng tạo và đạt hiệu quả cao. Nên chúng em đã nảy ra ý tưởng này và muốn xây dụng
một ứng dụng hỗ trợ người học học tiếng anh qua bài hát tiếng anh.
Mục tiêu của đề tài:
- Phát được bài hát.
- Lời bài hát bên dưới được dịch.
- Tra từ điển khi chọn vào từ bất trì trong lời bài hát.
- Chọn từ để lưu từ vào mục ưa thích.
Ứng dụng chúng em sẽ làm có các tính năng sau:
- Lời bài hát ở bên dưới được dịch:
• Phân thành các câu hát cụ thể. Khi nhấn chọn một câu bài nhạc có thể phát nhạc
từ câu đó trở đi
• Phân tích cú pháp được sử dụng của câu hát đó


• Phân tích cách phát âm
- Tra từ điển khi chọn vào từ bất kì trong lời bài hát
- Mục ưa thích. Cải tiến so với các ứng dụng đã có:


• Lưu được câu hát ưa thích
- Thiết kế giao diện thân thiện, mới mẻ và tăng trải nghiệm người dùng. Tính năng mới sắp xếp bài nhạc theo trình độ tiếng anh từ dễ đến khó - Tính
năng mới Mini Game:
• Phát lại câu hát và người học điền từ cịn thiếu trong câu hát đó
• Từ trong câu bị đảo vị trí và phải sắp xếp lại cho đúng
- Tính năng người học có thể hát:
• Thu âm lại lời hát của người học sau đó mang ra phân tích và so sánh với lời của
bài hát. Sau đó xuất ra kết quả đánh giá người học đã phiên âm đúng hay chưa.
Phương pháp thực hiện:
Để thực hiện được đề tài này cần trải qua các bước sau:
- Thu thập dữ liệu cụ thể là các bài hát có lời bài hát.
- Phân tích bài hát đó thơng qua lời bài hát: cấu trúc, cách phiên âm, từ vựng, … Phân tích, viết đặc tả theo yêu cầu bài toán
- Tạo cơ sở dữ liệu để lưu trữ các dữ liệu đã được phân tích
- Tạo server
- Viết ứng dụng với các chức năng đã phân tích
- Kết nối ứng dụng với server để ứng dụng lấy dữ liệu.
Các nội dung chính và giới hạn của đề tài:
Cần phân loại từng bài hát và sắp xếp cho phù hợp với trình độ tiếng anh. Sau khi phân
loại thì phân tích từng lời bài hát có chứa những ngữ pháp, cấu trúc, từ vụng, cách phát âm
và thêm vào kho data trên server. Khi người học sử dụng phần mềm để bắt đầu học thì người
dùng phải tải dữ liệu bài hát người dùng trọn. Sau khi tải xong, người học có thể bắt đầu
trình phát bài nhạc đó khi người học sẵn sàng. Trong quá trình phát, người


học có thể xem phần lời bài hát của bài hát ở bên dưới trình phát. Lời bài hát sẽ được phân

thành các câu và các câu đó sẽ tương ứng với câu mà ca sĩ đang hát. Mỗi câu trong lời bài
hát người học đều có thể tương tác như: nhấn chọn một từ trong câu để tra từ vựng của từ
đó và có thể thêm vào mục yêu thích từ vừa tra này khi nhấn biểu tượng trái tim bên cạnh,
Nếu nhấn giữ thì câu này sẽ hiển thị lựa chọn để người học có thể thêm vào danh mục câu
yêu thích hay thêm vào phần làm bài tập (Mini game),... Ở dưới mỗi câu của lời bài hát là
phần phát âm, dưới phần phát âm là bản dịch, người học có thể ẩn đi. Ở mỗi câu của lời
bài hát có biểu tượng play. Khi người dùng nhấn thì trình phát sẽ phát lại bài hát từ câu
đang chọn. bên cạnh biểu tượng Play là biểu tượng Mic. Khi người học nhấn giữ thì trình
phát nhạc sẽ tạm dừng để người học có thể phát âm và hát. Trong quá trình nhấn giữ, người
học hát hoặc phát âm, sau khi thả nhấn giữ thì phần phát âm của người học sẽ được phân
tích, sau khi phân tích thì so sánh với lời nhạc tại câu đó có khớp không rồi xuất ra kết quả
đánh giá xem người học phiên âm đúng hay sai. Ngồi ra, cịn có hai mini game để người
học có thể luyện tập. Ứng dụng sẽ lấy ngẫu nhiên một câu mà người học đã từng nghe và
tạo từ cịn thiếu trong câu đó. Người học nhấn biểu tượng play ở cuối mỗi câu để nghe
phát âm câu hát đó, sau đó người học điền vào chỗ trống từ thích hợp. Mini game thứ hai
là từ trong câu bị đảo lộn xộn và người học phải sắp xếp lại cho đúng.

Kế hoạch thực hiện:
Làm việc nhóm với 2 thành viên. Chủ yếu xây dựng ứng dụng tại nhà và trình bày với
giảng viên hướng dẫn hàng tuần để giảng viên theo dõi, đánh giá, nhận xét và lên kế
hoạch cho những tuần tiếp theo.
Bảng kế hoạch dự kiến:
Giai đoạn

Thời gian

Giai đoạn 1: Khảo sát

23/3/2020 –


thực trạng.

1/4/2020

Cơng việc
- Tìm hiểu và trải nghiệm các ứng
dụng tương tự


- Phân tích ưu, nhược điểm của các
ứng dụng đã gặp phải.
- Tìm hiểu các cơng nghệ cần sử
dụng cho ứng dụng.
Giai đoạn 2: phân tích

2/4/2020 –
20/4/2020

- Phân tích, xác định chức năng của
ứng dụng
- Vẽ lưu đồ
- Viết đặc tả

Giai đoạn 3: Xây

20/4/2020 –

dựng database

30/4/2020


Giai đoạn 4: Xây

1/5/2020 –

dựng giao diện

15/5/2020

Giai đoạn 5: Phát triển

15/5/2020 –

ứng dụng

25/6/2020

- Thiết kế và xây dựng database

- Thiết kế và xây dựng giao diện
ứng dụng
- Tạo kết nối với database và giao
diện
- Xây dựng các tính năng đã phân
tích
- Tạo Mock data để kiểm thử chức
năng
- Lấy và phân tích một vài data
thực tế
- Xây dựng webserver để lưu trữ

dữ liệu

- Kết nối ứng dụng với webserver
và viết các api liên quan tới dữ
liệu


Giai đoạn 6: Kiểm thử

Tháng 6-7/2020

- Kiểm thử và sửa lỗi ứng dụng

Giai đoạn 7: Hoàn

Tháng 7/2020

- Viết báo cáo khóa luận

thành báo cáo
Xác nhận của CBHD

TP. HCM, ngày….tháng

(Ký tên và ghi rõ họ tên)

…..năm….. Sinh viên
(Ký tên và ghi rõ họ tên)

MỤC LỤC

Chương 1. MỞ ĐẦU........................................................................................................................2
Lý do chọn đề tài................................................................................................................2
Mục tiêu.................................................................................................................................2
tượng..............................................................................................................................3

Đối
Phạm

vi..................................................................................................................................3
Chương 2. TỔNG QUAN................................................................................................................4
Phân tích các ứng dụng trong nước đã có..................................................................4 2.1.1.
Ứng dụng Learn English with Song Lyrics..................................................4 2.1.2. Ứng dụng
Lời Dịch Bài Hát Tiếng Anh........................................................5 2.1.3. Ứng dụng Học tiếng
anh qua Video, bài hát, phim và bản tin ..............6 2.1.4. Ứng dụng Learn English with
Song Lyrics & Free Music Videos......8 2.1.5. Ứng dụng Learn English through Song
Lyric .............................................9 2.1.6. Ứng dụng Học Tiếng Anh qua Bài Hát


......................................................10 2.1.7. Ứng dụng eJOY Học tiếng Anh qua Video và
Game............................12

Phân tích các ứng dụng nước

ngồi..........................................................................13 2.2.1. Ứng dụng Learn English with
Music ..........................................................13 2.2.2. Ứng dụng Learn English with Music
Olalla .............................................14 2.2.3. Ứng dụng Aprender Ingles gratis con musica –
Sounter......................16 2.2.4. Ứng dụng Learn Languages with Music
....................................................17 2.2.5. Ứng dụng TMucsicc – Learn languages with
music..............................19


Tổng hợp

............................................................................................................................20 Ch ương 3. CÁC
CÔNG NGHỆ SỬ DỤNG..............................................................................22
Ngơn ngữ lập trình Dart................................................................................................22
3.1.1. Giới thiệu về Dart...............................................................................................22 3.1.2.
Các khái niệm quan trọng trong Dart ..........................................................22 3.1.3.
Những ưu điểm của Dart..................................................................................24
Flutter

Framework

..........................................................................................................24

3.2.1. Widget ....................................................................................................................25 3.2.2.
Ưu điểm của Flutter...........................................................................................26 3.2.3.
Nhược điểm của Flutter....................................................................................26
NodeJs.................................................................................................................................27
3.3.1. NodeJS là gì? .......................................................................................................27 3.3.2.
Những ứng dụng nên được viết bằng NodeJS..........................................27 3.3.3. Lý do
sử dụng NodeJS......................................................................................27 3.3.4. Cài đặt
Server.......................................................................................................28
3.3.4.1. Các package được sử dụng .........................................................................28
3.3.4.2. Thiết lập một Express Server.....................................................................28
3.3.4.3. Thêm Middleware Body Parsing..............................................................29
API.......................................................................................................................................29
3.4.1. API là gì?...............................................................................................................29 3.4.2.


Ưu điểm của API................................................................................................30 3.4.3.

Nhược điểm của API.........................................................................................31
RESTful API.....................................................................................................................31
3.5.1. RESTful API là gì? ............................................................................................31 3.5.2.
Thiết kế RESTful Service................................................................................32 3.5.2.1. Dữ
liệu trả về ...................................................................................................32
3.5.2.2. Các HTTP Method mà RESTful hỗ trợ .................................................32
3.5.2.3. Định dạng dữ liệu Json.................................................................................33
3.5.2.4. Định dạng URI của API...............................................................................33
3.5.2.5. Cấu trúc của URI............................................................................................33
3.5.2.6. Phi trạng thái (Stateless)..............................................................................34
3.5.2.7. Status code trả về ...........................................................................................34
MongoDB..........................................................................................................................35
3.6.1. NOSQL ..................................................................................................................35 3.6.2.
MongoDB..............................................................................................................36 3.6.3. Các
thuật ngữ hay sử dụng trong MongoDB............................................36 3.6.4. Ưu điểm
của MongoDB...................................................................................37 3.6.5. Nhược điểm
khi sử dụng MongoDB ...........................................................38
Mongoose ..........................................................................................................................39
Chương 4. XÂY DỰNG VÀ TRIỂN KHAI SERVER ...........................................................41
Thiết kế dữ liệu................................................................................................................41 4.1.1. Sơ
đồ lớp................................................................................................................41 4.1.2. Mô tả các lớp
trong cơ sở dữ liệu .................................................................42 4.1.2.1. Lớp
Songs.........................................................................................................42 4.1.2.2. Lớp
Lyrics........................................................................................................42

Nghiệp

vụ...........................................................................................................................43 4.2.1. Truy xuất
dữ liệu ................................................................................................43 4.2.2. Cập nhật dữ liệu
..................................................................................................45 Ch ương 5. XÂY D ỰNG ỨNG



DỤNG.......................................................................................51

Phân tích yêu cầu

............................................................................................................51
5.1.1. Sơ đồ use case tổng quát..................................................................................51 5.1.2.
Danh sách actor...................................................................................................51 5.1.3. Danh
sách use case.............................................................................................52 5.1.4. Đặc tả yêu
cầu phần mềm................................................................................54
5.1.4.1. Đặc tả use case “Xem danh sách bài hát”..............................................54
5.1.4.2. Đặc tả use case “Đổi chế độ dark mode”...............................................55
5.1.4.3. Đặc tả use case “Đổi giao diện”................................................................56
5.1.4.4. Đặc tả use case “Đổi ngôn ngữ” ...............................................................57
5.1.4.5. Đặc tả use case “Chia sẻ ứng dụng”........................................................57
5.1.4.6. Đặc tả use case “Phát video bài hát”.......................................................58
5.1.4.7. Đặc tả use case “Thêm bài hát yêu thích”.............................................59
5.1.4.8. Đặc tả use case “Hiển thị phụ đề”............................................................60
5.1.4.9. Đặc tả use case “Tra từ điển”.....................................................................62
5.1.4.10. Đặc tả use case “Phát âm”........................................................................63
5.1.4.11. Đặc tả use case “Thêm từ yêu thích”....................................................63
5.1.4.12. Đặc tả use case “Chọn câu hát để nghe” .............................................65
5.1.4.13. Đặc tả use case “Ẩn/Hiện phụ đề tiếng Anh”....................................66
5.1.4.14. Đặc tả use case “Ẩn/Hiện phụ đề tiếng Việt”....................................67
5.1.4.15. Đặc tả use case “Đóng góp/chỉnh sửa lời dịch”................................68
5.1.4.16. Đặc tả use case “Báo sai” .........................................................................69
5.1.4.17. Đặc tả use case “Thích bài hát”..............................................................70
5.1.4.18. Đặc tả use case “Chọn từ đúng”.............................................................71
5.1.4.19. Đặc tả use case “Sắp xếp lại câu”..........................................................72

5.1.4.20. Đặc tả use case “Hát theo lời”.................................................................74
5.1.4.21. Đặc tả use case “Bỏ yêu thích”...............................................................76

Giao

diện ứng dụng........................................................................................................77 5.2.1. Danh sách


các màn hình...................................................................................77 5.2.2. Mơ tả các màn
hình............................................................................................77 5.2.2.1. Màn hình
Loading..........................................................................................77 5.2.2.2. Màn hình
Home..............................................................................................78 5.2.2.3. Màn hình
Listen..............................................................................................81 5.2.2.4. Màn hình
Contribute...................................................................................84 5.2.2.5. Màn hình
Report...........................................................................................85 5.2.2.6. Màn hình Choose
Word.............................................................................86 5.2.2.7. Màn hình Rearrange
Sentence ...............................................................87 5.2.2.8. Màn hình Sing Follow
Lyric .....................................................................89 Ch ương 6. K ẾT LU ẬN VÀ H ƯỚNG PHÁT
TRIỂN ...........................................................90
luận..............................................................................................................................90

Kết
Hướng

phát triển...........................................................................................................90

DANH MỤC HÌNH
Hình 2.1: Ứng dụng Learn English with Song Lyrics...........................................................4
Hình 2.2: Ứng dụng Lời Dịch Bài Hát Tiếng Anh .................................................................6
Hình 2.3: Ứng dụng Học tiếng anh quan Video, bài hát, phim và bản tin .....................7

Hình 2.4: Ứng dụng Learn English with Song Lyric & Free Music Videos.................8
Hình 2.5: Ứng dụng Learn English through Song Lyric ...................................................10
Hình 2.6: Ứng dụng Học Tiếng Anh qua Bài Hát................................................................11
Hình 2.7: Ứng dụng eJOY Học tiếng Anh qua Video và Game .....................................12
Hình 2.8: Ứng dụng Lean English with Music .....................................................................14
Hình 2.9: Ứng dụng Learn English with Music Olalla ......................................................15
Hình 2.10: Ứng dụng Aprender Ingles gratis con musica – Sounter.............................16
Hình 2.11: Ứng dụng Learn Languages with Music...........................................................18
Hình 2.12: Ứng dụng TMusicc – Learn languages with music.......................................19
Hình 3.1: Một chương trình Dart đơn giản.............................................................................23
Hình 3.2: Cấu trúc của flutter.....................................................................................................25
Hình 3.3: Widget trong flutter.....................................................................................................25
Hình 3.4: Thiết lập tập tin app.js................................................................................................28
Hình 3.5: Khởi động server..........................................................................................................28


Hình 3.6: Thêm Middleware Body Parsing............................................................................29
Hình 3.7: Sơ lược API....................................................................................................................30
Hình 3.8: định dạng dữ liệu JSON.............................................................................................33
Hình 3.9: Mơ tả Client gửi request đến Server......................................................................34
Hình 3.10: Mongoose.....................................................................................................................39
Hình 4.1: Sơ đồ lớp........................................................................................................................41
Hình 4.2: Lấy thơng tin danh sách bài hát ..............................................................................44
Hình 4.3: Lấy thơng tin bài hát...................................................................................................44
Hình 4.4: Cập nhật lượt xem bài hát.........................................................................................45
Hình 4.5: Cập nhật lượt u thích bài hát ...............................................................................46
Hình 4.6: Cập nhật thơng tin bài hát.........................................................................................47
Hình 4.7: Cập nhật thơng tin lời bài hát. .................................................................................48
Hình 4.8: Cập nhật thêm thời gian bắt đầu cho lời bái hát................................................49
Hình 4.9: Cập nhật trừ bớt thời gian bắt đầu cho lời bái hát............................................50

Hình 5.1: Sơ đồ use case tổng quát ...........................................................................................51
Hình 5.2: Sequence diagram “Xem danh sách bài hát” .....................................................54
Hình 5.3: Sequence diagram “Đổi chế độ dark mode” ......................................................55
Hình 5.4: Sequence diagram “Đổi giao diện” .......................................................................56
Hình 5.5: Sequence diagram “Đổi ngơn ngữ”.......................................................................57
Hình 5.6: Sequence diagram “Chia sẻ ứng dụng”................................................................58
Hình 5.7: Sequence diagram “Phát video bài hát”...............................................................59
Hình 5.8: Sequence diagram “Thêm bài hát u thích”.....................................................60
Hình 5.9: Sequence diagram “Hiển thị phụ đề”....................................................................61
Hình 5.10: Sequence diagram “Tra từ điển”..........................................................................62
Hình 5.11: Sequence diagram “Phát âm”................................................................................63
Hình 5.12: Sequence diagram “Thêm từ u thích”............................................................64
Hình 5.13: Sequence diagram “Chọn câu hát để nghe” .....................................................65
Hình 5.14: Sequence diagram “Ẩn/Hiện phụ đề tiếng Việt”............................................66
Hình 5.15: Sequence diagram “Ẩn/Hiện phụ đề tiếng Việt”............................................67
Hình 5.16: Sequence diagram “Đóng góp/Chỉnh sửa lời dịch”.......................................68
Hình 5.17: Sequence diagram “Báo sai” .................................................................................69
Hình 5.18: Sequence diagram “Thích bài hát”......................................................................70
Hình 5.19: Sequence diagram “Chọn từ đúng”.....................................................................72
Hình 5.20: Sequence diagram “Sắp xếp lại câu”..................................................................74


Hình 5.21: Sequence diagram “Hát theo lời” ........................................................................75
Hình 5.22: Sequence diagram “Bỏ u thích”.......................................................................76
Hình 5.23: Màn hình loading với chế độ bình thường và dark mode ...........................78
Hình 5.24: Tab Musics với chế độ thường và dark mode .................................................79
Hình 5.25: Tab Favorites với chế độ thường và dark mode .............................................80
Hình 5.26: Tab Profile với chế độ thường và dark mode ..................................................81
Hình 5.27: Màn hình Listen với chế độ thường và dark mode........................................82
Hình 5.28: Màn hình listen với tính năng tra từ điển..........................................................83

Hình 5.29: Menu chọn trị chơi chế độ thường và dark mode...................................84
Hình 5.30: Màn hình Contribute với chế độ thường và dark mode ........................85
Hình 5.31: Màn hình Report với chế độ thường và dark mode ...............................86
Hình 5.32: Màn hình Choose Word với chế độ thường và dark mode...................87
Hình 5.33: Màn hình Rearrange Sentence với chế độ thường và dark mode.....88
Hình 5.34: Màn hình Sing Follow Lyric với chế độ thường và dark mode...........89

DANH MỤC BẢNG
Bảng 4.1: Lớp Songs......................................................................................................................42
Bảng 4.2: Lớp lyrics.......................................................................................................................43
Bảng 5.1: Danh sách actor............................................................................................................51
Bảng 5.2: Danh sách use case .....................................................................................................54
Bảng 5.3: Đặc tả use case “Xem danh sách bài hát”...........................................................54
Bảng 5.4: Đặc tả use case “đổi chế độ dark mode” .............................................................55
Bảng 5.5: Đặc tả use case “Đổi giao diện”.............................................................................56
Bảng 5.6: 5.6: Đặc tả use case “Đổi ngôn ngữ”....................................................................57
Bảng 5.7: Đặc tả use case “Đổi ngôn ngữ” ............................................................................58
Bảng 5.8: Đặc tả use case “Phát Video bài hát” ...................................................................59
Bảng 5.9: Đặc tả use case “Thêm bài hát yêu thích” ..........................................................60
Bảng 5.10: Đặc tả use case “Hiển thị phụ đề”.......................................................................61
Bảng 5.11: Đặc tả use case “Tra từ điển” ...............................................................................62
Bảng 5.12: Đặc tả use case “Đổi ngôn ngữ”..........................................................................63
Bảng 5.13: Đặc tả use case “Thêm từ yêu thích” .................................................................64
Bảng 5.14: Đặc tả use case “Chọn câu hát để nghe”...........................................................65
Bảng 5.15: Đặc tả use case “Ẩn/Hiện phụ đề tiếng Anh” .................................................66
Bảng 5.16: Đặc tả use case “Ẩn/Hiện phụ đề tiếng Việt” .................................................67


Bảng 5.17: Đặc tả use case “Đóng góp/Chỉnh sửa lời dịch” ............................................68
Bảng 5.18: Đặc tả use case “Báo sai”.......................................................................................69

Bảng 5.19: Đặc tả use case “Thích bài hát” ...........................................................................70
Bảng 5.20: Đặc tả use case “Chọn từ đúng” ..........................................................................71
Bảng 5.21: Đặc tả use case “Sắp xếp lại câu” .......................................................................73
Bảng 5.22: Đặc tả use case “Hát theo lời”..............................................................................75
Bảng 5.23: Đặc tả use case “Bỏ u thích” ............................................................................76
Bảng 5.24: Danh sách các màn hình.........................................................................................77

DANH MỤC TỪ VIẾT TẮT
Từ viết tắt

Ý nghĩa

UI

User interface – Giao diện
người dùng

API

Application Programing Interface
– giao diện lập trình ứng dụng

AOT

Ahead Of Time – Biên dịch từ
đầu đến cuối

JIT

Just In Time – Viết đến đâu

biên dịch ngay tới đó

JSON

Java Script Object Notation

REST

Representational State Transfer)

HTTP

HyperText Transfer Protocol

URI

Uniform Resource Identifier

XML

Extensible Markup Language

RDBMS

Relational Database Management
System - Hệ quản trị cơ sở dữ liệu quan
hệ

CSDL


Cơ sở dữ liệu

ODM

Object Data Model


TĨM TẮT KHĨA LUẬN
Trong khóa luận này, chúng em tìm hiểu các ứng dụng hiện có trên thị trường để
đưa ra những chức năng phù hợp với người dùng đồng thời cải tiến, thêm vào một số
tính năng mới. Vận dụng các kiến thức đã học: phân tích, thiết kế, xây dựng, … để làm
đề tài khóa luận này. Nghiên cứu, tìm hiểu, học hỏi cơng nghệ mới là Flutter và sử
dụng nó để xây dựng ứng dụng trên nền tảng mobile.

1


Chương 1. MỞ ĐẦU
Lý do chọn đề tài
Tiếng anh là ngôn ngữ phổ biến và được sử dụng nhiều nhất trên thế giới nên nó
được xem như là ngơn ngữ chung của thế giới, dễ dàng xóa bỏ mọi rào cản ngôn ngữ.
Rất nhiều tài liệu, kiến thức giá trị đều được lưu lại bằng tiếng anh. Vì vậy học tiếng
anh đem lại lợi ích rất lớn. Hiện có rất nhiều phương pháp học tiếng anh được sáng tạo
như: đọc báo tiếng anh, xem phim tiếng anh, ra công viên chỉ đường cho người nước
ngoài, … và nhiều phương pháp khác nhằm mục đích giúp người học dễ dàng tiếp cận,
hiểu nhanh và đặc biệt không gây dễ nhàm chán, dễ bỏ cuộc như các phương pháp
truyền thống.
Hiện nay, công nghệ đang phát triển mạnh mẽ kéo theo các thiết bị công nghệ
ngày càng nhỏ gọn và thông minh hơn trong số đó có điện thoại di động. Hầu như hiện
nay ai cũng dễ dàng sở hữu cho mình một chiếc điện thoại di động vì những lợi ích nó

mang lại như sự nhỏ gọn, tiện lợi, giá thành rẻ, dễ lưu trữ thông tin, dễ cập nhật tin tức,
dễ liên lạc, giao tiếp với người khác, … Vậy nên điện thoại di động trở nên cực kì phổ
biến và hữu ích. Chính vì vậy, áp dụng cơng nghệ cho việc học tiếng anh là phương
pháp hiệu quả.
Âm nhạc là thứ làm cho con người trở nên sống động, là thứ để con người biểu lộ
cảm xúc. Âm nhạc có rất nhiều loại phù hợp chọ mọi lứa tuổi nên hầu hết chúng ta ai
cũng thích âm nhạc và âm nhạc không làm ta nhàm chán. Vậy nên việc học tiếng anh
bằng âm nhạc là một phương pháp hiệu quả.
Kết hợp hai yếu tố trên là công nghệ và âm nhạc vào việc học tiếng anh sẽ là
phương pháp sáng tạo và đạt hiệu quả cao. Vậy nên chúng em chọn xây dựng ‘ứng
dụng hỗ trợ học tiếng anh qua lời bài hát’ làm đề tài khóa luận.
Mục tiêu
• Tìm hiểu và áp dụng cơng nghệ mới.
• Xây dựng ứng dụng hỗ trợ học tiếng anh qua bài hát

2
Đối tượng
Tất cả mọi người đều có thể sử dụng ứng dụng. Đặc biệt là những người
đang có nhu cầu học tiếng anh.


Phạm vi
Phạm địa lý: Ứng dụng sử dụng tại Việt Nam.
Phạm vi ứng dụng: Phát triển trên nền tảng di động

3

Chương 2. TỔNG QUAN
Phân tích các ứng dụng trong nước đã có
2.1.1. Ứng dụng Learn English with Song Lyrics

• Mơ tả chung


Ứng dụng Learn English with Song Lyrics được phát triển bởi Tan Pham. Ứng
dụng có số lượt tải lớn với hơn 100.000 lượt tải. Và có lượt đánh giá khá cao 4.2 trên
tổng số 822 lượt đánh giá.

Hình 2.1: Ứng dụng Learn English with Song Lyrics
• Các chức năng
- Sắp xếp danh sách bài hát theo bảng chứ cái alphabet

4
- Tìm kiếm bài hát
- Bài hát ưa thích
- Chia sẻ bài hát
- Xem video và hiển thị lời bài hát
- Ghi âm lời nói của người dùng
• Nhận xét
Ứng dụng được xây dựng với giao diện đơn giản, các tính năng khơng q
phức tạp. Nhưng ứng dụng cịn nhiều hạn chế. Các icon khơng đồng đều. Số
lượng bài hát ít, chưa được cập nhật thường xuyên


2.1.2. Ứng dụng Lời Dịch Bài Hát Tiếng Anh
• Mơ tả chung
Ứng dụng Lời Dịch Bài Hát Tiếng Anh được phát triển bởi lovelygroup. Ứng
dụng được phát hành vào ngày 12/02/2015. Cho tới nay đã đạt được hơn 100.000
lượt tải xuống. Có số sao là 4.0 trên tổng số 1.214 lượt đánh giá.
• Các chức năng
- Có chế độ dark mode

- Tìm kiếm bài hát
- Chế độ nghe nhạc offline
- Quản lý người dùng, đăng nhập bằng số điện thoại, facebook, gmail Bài hát ưa thích
- Quản lý nhạc
- Phát nhạc có kèm lời dịch
- Cuộn lời dịch theo lời hiện tại
- Hẹn giờ kết thúc
- Phát dưới nền
- Báo sai lời bài hát, audio, lời dịch và thời gian chạy
- Chat room

5


×