Đồ án tốt nghiệp: Xây dựng website học tiếng anh bằng flashcard (Full)

Tải full đồ án tốt nghiệp xây dựng website học tiếng Anh bằng flashcard. Báo cáo chi tiết, là tài liệu tham khảo hữu ích cho sinh viên ngành CNTT.

Chuyên ngành

Công nghệ Phần mềm

Người đăng

Ẩn danh

Thể loại

Khóa luận tốt nghiệp

2020

123
0
0

Phí lưu trữ

35 Point

Tóm tắt

I. Giới thiệu về đồ án xây dựng Website học tiếng Anh Flashcard

Website học tiếng Anh flashcard là một giải pháp công nghệ hiện đại nhằm hỗ trợ người học ngoại ngữ một cách hiệu quả và linh hoạt. Đồ án này được thực hiện tại Trường Đại học Sư phạm Kỹ thuật TP.HCM, dưới sự hướng dẫn của ThS. Nguyễn Trần Thi Văn. Mục tiêu chính là xây dựng một nền tảng học tập trực tuyến sử dụng phương pháp flashcard để giúp người dùng ghi nhớ từ vựng tiếng Anh một cách khoa học. Hệ thống được phát triển bằng ReactJS cho phần giao diện người dùng và .NET Core cho phần backend, tạo ra một ứng dụng web mạnh mẽ, linh hoạt và dễ sử dụng. Đây là một bước tiến quan trọng trong lĩnh vực giáo dục điện tử tại Việt Nam.

1.1. Tính cấp thiết của đề tài

Nhu cầu học tiếng Anh ngày càng tăng cao trong xã hội hiện đại. Tuy nhiên, phương pháp học truyền thống thường không hiệu quả và tốn thời gian. Flashcard là một phương pháp học tập đã được chứng minh có tính hiệu quả cao, giúp người học ghi nhớ từ vựng lâu dài thông qua lặp lại khoảng cách. Việc xây dựng một website flashcard sẽ giúp tối ưu hóa quá trình học tập, cho phép học viên học tập mọi lúc mọi nơi với sự tiện lợi của công nghệ số.

1.2. Mục tiêu và phạm vi của đề tài

Đề tài hướng đến việc tạo ra một platform học tiếng Anh toàn diện với các tính năng chính bao gồm quản lý deck, quản lý card, tải các bộ flashcard có sẵn và học tập interactif. Phạm vi của đề tài bao gồm phát triển giao diện người dùng, thiết kế cơ sở dữ liệu, xây dựng các API backend, và kiểm thử toàn bộ hệ thống. Thời gian thực hiện khoảng 15 tuần với sự phân công công việc rõ ràng giữa các thành viên nhóm.

II. Công nghệ và kiến trúc hệ thống

Hệ thống website học tiếng Anh flashcard được xây dựng trên nền tảng kiến trúc client-server hiện đại. Phía frontend sử dụng ReactJS, một thư viện JavaScript phổ biến cho việc xây dựng các giao diện người dùng động và responsive. Phía backend được phát triển bằng .NET Core, một framework mạnh mẽ cho phép xử lý logic nghiệp vụ, quản lý cơ sở dữ liệu và cung cấp các API RESTful. Kiến trúc này đảm bảo tính mở rộng, bảo mật cao và hiệu suất tối ưu. Sự kết hợp giữa ReactJS.NET Core tạo ra một ứng dụng web chuyên nghiệp với trải nghiệm người dùng xuất sắc.

2.1. Frontend với ReactJS

ReactJS được chọn vì khả năng xây dựng các component tái sử dụng, quản lý state hiệu quả và performance cao. Thư viện này cho phép tạo các giao diện responsiveinteractive, phù hợp với nhu cầu của ứng dụng học tập. Các component như danh sách flashcard, bộ câu hỏi, và dashboard học tập được xây dựng một cách modular, dễ bảo trì và phát triển thêm.

2.2. Backend với .NET Core và thiết kế cơ sở dữ liệu

.NET Core cung cấp nền tảng mạnh mẽ để xây dựng API RESTful xử lý các yêu cầu từ phía frontend. Cơ sở dữ liệu được thiết kế để lưu trữ thông tin người dùng, các bộ flashcard, tiến độ học tập và dữ liệu liên quan. Kiến trúc này đảm bảo bảo mật dữ liệu người dùng, cho phép mở rộng hệ thống trong tương lai và hỗ trợ nhiều người dùng đồng thời.

III. Tính năng chính của hệ thống

Website học tiếng Anh flashcard được trang bị các tính năng thiết yếu để hỗ trợ quá trình học tập hiệu quả. Thứ nhất, quản lý deck cho phép người dùng tạo, sửa đổi và xóa các bộ flashcard theo chủ đề hoặc mức độ khó. Thứ hai, quản lý card cung cấp công cụ để thêm, chỉnh sửa từ vựng và định nghĩa. Thứ ba, tính năng tải deck có sẵn cho phép người dùng truy cập các bộ flashcard được xây dựng sẵn bởi cộng đồng hoặc chuyên gia ngôn ngữ. Cuối cùng, chế độ học tập interactif sử dụng các phương pháp spaced repetition để tối ưu hóa việc ghi nhớ từ vựng tiếng Anh.

3.1. Quản lý Deck và Card

Người dùng có thể tạo deck mới, sắp xếp các card theo danh mục và theo dõi tiến độ học tập. Mỗi card bao gồm từ tiếng Anh, định nghĩa, ví dụ sử dụng và hình ảnh minh họa. Hệ thống cho phép sắp xếp thứ tự, đặt mức độ ưu tiênđánh dấu card đã học để người dùng có thể tập trung vào những từ khó nhất.

3.2. Học tập và Tiến độ theo dõi

Chế độ học tập interactif sử dụng thuật toán spaced repetition để lên lịch ôn tập tối ưu. Hệ thống ghi lại thời gian học, số lần lặp lại, và tỷ lệ ghi nhớ của mỗi card. Người dùng có thể xem thống kê chi tiết về tiến độ học tập, giúp họ điều chỉnh chiến lược học tập phù hợp.

IV. Quá trình phát triển và kết quả đạt được

Đề tài được thực hiện trong 15 tuần với lộ trình rõ ràng và khoa học. Giai đoạn 1 tập trung vào nghiên cứu công nghệ ReactJS, .NET Core và các thư viện liên quan. Giai đoạn 2 bao gồm thiết kế giao diện người dùng và cơ sở dữ liệu. Giai đoạn 3 là cấu hình môi trường phát triển, xây dựng API backend và các component frontend tương ứng. Giai đoạn 4 hoàn thành các component còn lại, trong khi giai đoạn 5 dành cho kiểm thử toàn diện và viết báo cáo. Kết quả cuối cùng là một ứng dụng web hoàn chỉnh có thể được triển khai cho người dùng thực tế.

4.1. Kết quả và thành tựu chính

Nhóm đã thành công xây dựng một nền tảng học tiếng Anh đầy đủ các tính năng đã đề ra. Giao diện người dùng được thiết kế đẹp mắt và dễ sử dụng. Backend xử lý các yêu cầu nhanh chóng và ổn định. Hệ thống đã trải qua kiểm thử kỹ lưỡng và sẵn sàng cho triển khai. Đây là một đóng góp có ý nghĩa trong lĩnh vực giáo dục công nghệ tại Việt Nam.

4.2. Ưu nhược điểm và hướng phát triển

Ưu điểm: Giao diện thân thiện, chức năng hoàn chỉnh, kiến trúc mở rộng. Nhược điểm: Có thể bổ sung tính năng đa ngôn ngữ, tích hợp AI để gợi ý học tập. Hướng phát triển bao gồm ứng dụng mobile, tích hợp phát âm, thêm bài tập tương tác và hỗ trợ cộng tác giữa người dùng.

21/12/2025

Trích đoạn nội dung tài liệu

PHẦN MỞ ĐẦU 1. Tính cấp thiết của đề tài Hiện nay, tiếng Anh là ngôn ngữ quốc tế, được sử dụng rộng rãi tại nhiều quốc gia trên thế giới. Tại Việt Nam, rất nhiều người trong nhiều độ tuổi từ bé đến lớn đang nỗ lực hàng ngày để học tiếng Anh. Với trình độ tiếng Anh từ khá trở lên, người Việt Nam có thể đáp ứng được yêu cầu tuyển dụng trong nhiều ngành nghề như kinh tế, chính trị, khoa học, du lịch, vv… Ngoài ra, với tiếng Anh, chúng ta có thể tìm và đọc được các nguồn tài liệu quý giá mà rất ít khi được viết hoặc dịch sang tiếng Việt, hoặc có thể giao lưu kết bạn với tất cả mọi người trên thế giới.

Một trong những nền tảng ban đầu của việc sử dụng tiếng Anh tốt đó là phải có vốn từ vựng phong phú. Nhà ngôn ngữ học nổi tiếng D. Wilkins đã nói rằng “Without grammar, very little can be conveyed; without vocabulary, nothing can be conveyed. Chính vì vậy, có thể coi từ vựng là tiền đề quan trọng cho việc học và phát triển khả năng ngoại ngữ của mỗi người.

Cùng với đó là sự phát triển của công nghệ, bất kì ai cũng có thể sở hữu cho mình một chiếc máy tính xách tay. Chính vì vậy, việc học tiếng Anh trên các thiết bị di động đem lại cho người dùng một sự thuận tiện, linh hoạt hơn so với cách học từ vựng truyền thống bằng giấy bút. Từ những nhu cầu và lợi thế đó, nhóm em quyết định nghiên cứu và xây dựng ứng dụng: XÂY DỰNG WEBSITE HỌC TIẾNG ANH BẰNG FLASHCARD. Mục đích của đề tài Đề tài nhằm nghiên cứu về thói quen học từ vựng của mọi người, từ đó có thể xây dựng một website để học từ vựng thông qua dạng flashcard, ngoài ra mọi người có thể chia sẻ những bài học với nhau thông qua hệ thống, dễ dàng tương tác như trong thực tế, tránh gây nhàm chán cho người dùng.

Đối tượng và phạm vi nghiên cứu Đề tài này phù hợp với tất cả mọi người với mọi độ tuổi, mọi trình độ học vấn, mọi ngành nghề,. đang có nhu cầu cải thiện vốn từ vựng của mình. Kết quả dự kiến đạt được - Xây dựng được website học tiếng Anh bằng flashcard sử dụng công nghệ ReactJS và. 1 - Website phải có 2 mục cho người dùng sử dụng và admin để quản lý tất cả các dữ liệu của người dùng.

Phương pháp nghiên cứu - Phương pháp thực nghiệm khoa học. - Phương pháp phân tích và tổng hợp. Bố cục báo cáo Báo cáo dự kiến gồm 3 phần và 5 chương: - Phần mở đầu - Phần nội dung o Chương 1: Cơ sở lý thuyết o Chương 2: Khảo sát hiện trạng và xác định yêu cầu o Chương 3: Mô hình hoá yêu cầu o Chương 4: Thiết kế hệ thống o Chương 5: Cài đặt và kiểm thử - Phần kết luận 2 PHẦN NỘI DUNG CHƯƠNG 1: CƠ SỞ LÝ THUYẾT 1.NET CORE VÀ ASP.NET CORE ASP.NET Core là một open-source mới và framework đa nền tảng (cross- platform) 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. Do là một framework đa nền tảng nên .NET Core hỗ trợ hầu hết các hệ điều hành như Windows, Linux, macOS.NET Core, có thể: - Xây dựng các ứng dụng web, các dịch vụ, ứng dụng IoT và các phần backend mobile.

- Sử dụng các công cụ phát triển ưa thích trên Windows, macOS và Linux. - Triển khai trên đám mây hoặc tại chỗ.NET Core hoặc. - Dùng để xây dựng giao diện Web (Web UI) cũng như các API Web. - Tích hợp các framework phía client hiện đại và các quy trình làm việc phát triển.

- Hệ thống cấu hình sẵn có trên đám mây. - Đường ống (pipeline) yêu cầu HTTP mang tính module, hiện suất cao và nhẹ. - Có khả năng lưu trữ (host) ở IIS, Nginx, Apache, Docker, hoặc tự host ở các tiến trình riêng. - Tạo mới phiên bản app side-by-side với.

- Tạo công cụ đơn giản hóa phát triển web hiện đại. - Mã nguồn mở và tập trung vào cộng đồng phát triển mã nguồn.NET Core được cung cấp dưới dạng các gói NuGet. Có thể sử dụng các [1] gói này để tối ưu hóa ứng dụng khi chỉ nhúng những thành phần cần thiết.NET Core MVC cung cấp các tính năng để xây dựng API Web và ứng dụng web như sau: - Mô hình MVC (Model-View-Controller) giúp tạo ra các API web và ứng dụng web có khả năng thực nghiệm. - Razor Pages (phần mới ở ASP.0) là một mô hình lập trình dựa theo cơ chế trang web giúp xây dựng giao diện web dễ và hiệu quả hơn.

- Razor cung cấp một cú pháp hiệu quả cho các trang Razor và view MVC. 3 - Tag Helper cho phép mã nguồn phía server tham gia vào việc tạo và phát sinh phần tử HTML ở các tập tin Razor. - Tích hợp hỗ trợ cho các định dạng đa dữ liệu và việc dàn xếp nội dung cho phép các API web tiếp cận nhiều khách hàng hơn, bao gồm trên các trình duyệt và thiết bị mobile khác nhau. - Ràng buộc mô hình tự động ánh xạ dữ liệu từ các yêu cầu HTTP đến các tham số phương thức hành động.

- Xác thực mô hình tự động thực thi xác thực dữ liệu phía client và server. Phát triển phía client: ASP.NET Core tích hợp liền mạch với các thư viện và [1] framework phía client, bao gồm Angular, React, và Bootstrap. REACTJS React JS Component là các block xây dựng nên mọi ứng dụng React. Một component có thể được sử dụng riêng hoặc được kết hợp với các component khác để tạo ra các component lớn hơn.

Điều quan trọng, các component này là động: chúng cung cấp một template, sẽ được điền vào bằng dữ liệu biến. Mục đích chính của một component React là tạo ra một số JSX từ template này, và sẽ biên dịch sang HTML và [2] được hiển thị trên DOM. JSX là một syntax extension cho JavaScript. Nó có vẻ rất giống với HTML, nhưng với một số khác biệt chính.

Ví dụ: bạn có thể bao gồm một vanilla JavaScript [2] expression bên trong JSX bằng cách bao nó trong dấu ngoặc nhọn. Props là một object được cung cấp cho một component bởi cha của nó và nó chứa tất cả các thông tin liên quan đến component cụ thể đó. State giống như nguồn [2] của thác nước, thì props là dòng nước chảy xuống. State là một đối tượng JavaScript ghi lại và phản ứng với các user event.

Mỗi class-based component có state object riêng và bất cứ khi nào state bị thay đổi, [2] component đó cùng với tất cả các phần tử con của nó sẽ được hiển thị lại. 4 CHƯƠNG 2: KHẢO SÁT HIỆN TRẠNG VÀ XÁC ĐỊNH YÊU CẦU 2. KHẢO SÁT HIỆN TRẠNG 2. Tinycards (https://tinycards.

Giao diện trang chủ Tinycards Ưu điểm: - Thiết kế đơn giản, đẹp, hiện đại. - Cho phép học với flashcard mà không cần phải đăng nhập. - Nguồn flashcard phong phú, không giới hạn ngôn ngữ. - Có danh mục hiển thị những bài học tiêu biểu giúp người dùng dễ dàng truy cập.

- Có chức năng theo dõi người dùng, giúp cập nhật những bài học của những người mình quan tâm một cách nhanh chóng. Nhược điểm: - Mỗi card chỉ có thể thêm một nghĩa duy nhất. - Nghĩa của mỗi card chưa có các thông tin như từ loại hay ví dụ mẫu sử dụng từ. Cram (https://www.

Giao diện trang chủ Cram Ưu điểm: - Có phân loại flashcard. - Cho phép học với flashcard mà không cần phải đăng nhập. - Cho phép giới hạn số lượng thẻ trên tổng số thẻ trong 1 lần kiểm tra. - Hỗ trợ một số hình thức kiểm tra đơn giản như so khớp, ghi nhớ.

- Tích hợp vào các game nhằm dễ dàng ghi nhớ. - Nguồn flashcard phong phú. - Hỗ trợ trên nền tảng di động. - Giao diện không thân thiện.

BrainScape (https://www. Giao diện trang chủ BrainScape Ưu điểm: - Giao diện được thiết kế hiện đại. - Hỗ trợ trên cả nền tảng di động. - Nguồn flashcard phong phú.

- Có 5 lựa chọn tương ứng với 5 mức độ người dùng hiểu về từ, giúp cho hệ thống ghi nhận được khả năng tiếp thu từ của người dùng. - Có chức năng mở lớp, có thể thêm nhiều người dùng khác để sử dụng chung bài học. - Trả phí để sở hữu flashcard có sẵn. ProProfs Flashcard (https://www.com/flashcards/) Hình 2.

Giao diện trang chủ ProProfs Flashcard Ưu điểm: - Giao diện thiết kết hiện đại. - Hỗ trợ một số hình thức kiểm tra đơn giản như so khớp, ghi nhớ. - Cho phép chia sẻ flashcard qua Email, Facebook, Twitter, … - Cho phép kiếm tiền từ việc bán bộ flashcard tự tạo. - Có thể sao chép và chỉnh sửa flashcard có sẵn.

- Hỗ trợ trên cả nền tảng di động. - Cần phải trả phí để có thêm nhiều chức năng khác. StudyBlue (https://www. Giao diện trang chủ StudyBlue Ưu điểm: - Cho phép tuỳ chỉnh số lượng flashcard và hình thức làm bài kiểm tra.

- Đánh giá, tổng kết bài kiểm tra khi chưa hoàn thành. - Hỗ trợ trên cả nền tảng di động. - Cho phép thao tác với card bằng bàn phím, giúp trải nghiệm học nhanh và dễ dàng hơn. - Bài học có link riêng để chia sẻ lên các nền tảng mạng xã hội như Facebook, - Hiển thị toàn bộ flashcard trên màn hình thay vì có phân trang.

- Không có hình thức hiển thị từng flashcard. - Giao diện kiểm tra không thân thiện. XÁC ĐỊNH YÊU CẦU Xây dựng được website học tiếng Anh bằng flashcard với các yêu cầu sau: - Yêu cầu chức năng: o Đăng nhập, đăng ký bằng tài khoản thường. o Đăng nhập, đăng ký bằng tài khoản Facebook, Google.

o Tạo, xoá, sửa deck. o Tạo, xoá, sửa card. o Thêm card vào deck, xoá card khỏi deck. o Xem thống kê.

o Luyện tập với deck. o Xem kho card và kho deck. o Tải card từ kho card. o Tải deck từ kho deck.

o Gửi yêu cầu công khai deck cá nhân. - Yêu cầu hệ thống: o Quản lý user ▪ Xem và xóa user. ▪ Xem và xóa deck của user. ▪ Xem và xóa card của user.

o Quản lý đề xuất card và yêu cầu công khai deck của user. - Yêu cầu phi chức năng: o Tốc độ truy xuất dữ liệu nhanh. o Dễ bảo trì 10 CHƯƠNG 3: MÔ HÌNH HOÁ YÊU CẦU 3. LƯỢC ĐỒ USECASE Hình 3.

Nghiệp vụ Bảng 3. Bảng nghiệp vụ của Guest STT Tên nghiệp vụ Loại nghiệp vụ Quy định Biểu mẫu Ghi chú 1 Đăng nhập Xử lý QD_DangNhap BM_DangNhap 2 Đăng ký Xử lý, lưu trữ QD_DangKy BM_DangKy 3. Quy định Bảng 3.

Nội dung được bảo vệ bản quyền — Tải xuống đầy đủ