Đồ án HCMUTE: Xây dựng website học toán tiếng Anh cho học sinh cấp 1

Khám phá đồ án HCMUTE xây dựng website học toán tiếng Anh cho học sinh cấp 1 bằng công nghệ MERN stack, nâng cao kỹ năng học tập hiệu quả.

Chuyên ngành

Công Nghệ Thông Tin

Tác giả

Trần Thị Liên

Người đăng

Ẩn danh

Thể loại

Đồ Án Tốt Nghiệp

2020

71
1
0

Phí lưu trữ

30 Point

Mục lục chi tiết

LỜI CẢM ƠN

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

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

1.2. Mục đích của đề tài

1.3. Cách tiếp cận và phương pháp nghiên cứu

1.4. Kết quả dự kiến đạt được

2. PHẦN 2: NỘI DUNG

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

2.1. MernStack là gì?

2.2. MongoDB

2.3. ExpressJS

2.4. ReactJS

2.5. NodeJS

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

3.1. Khảo sát hiện trạng

3.1.1. Tienganh123

3.1.2. Luyenthi123

3.2. Kết luận

3.3. Xác định yêu cầu

3.3.1. Nhận diện tác nhân và các chức năng trong sơ đồ usecase

3.3.2. Lược đồ usecase

3.3.3. Mô tả usecase

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

4.1. Thiết kế hệ thống

4.2. Thiết kế dữ liệu

4.2.1. Mô hình ERD

4.2.2. Mô hình cơ sở dữ liệu

5. CHƯƠNG 4: THIẾT KẾ GIAO DIỆN

5.1. Thiết kế giao diện Admin

5.1.1. Giao diện màn hình đăng nhập

5.1.2. Giao diện màn hình trang chủ Admin

5.1.3. Giao diện quản lý

5.1.3.1. Giao diện thêm
5.1.3.2. Giao diện sửa

5.2. Thiết kế giao diện người dùng

5.2.1. Giao diện màn hình chính

5.2.2. Giao diện nội dung bài học

5.2.3. Giao diện kiểm tra

6. CHƯƠNG 5: CÀI ĐẶT VÀ KIỂM THỬ

6.1. Hướng dẫn tạo project

6.2. Tạo project react js

PHẦN KẾT LUẬN

7.1. Những kết quả đạt được

7.2. Hướng phát triển

TÀI LIỆU THAM KHẢO

HƯỚNG DẪN SỬ DỤNG

Tóm tắt

I. Giới thiệu Website Học Toán Tiếng Anh Cấp 1 và Công nghệ MERN Stack

Đề tài xây dựng website học toán tiếng Anh cho học sinh cấp 1 sử dụng công nghệ MERN Stack hướng đến mục tiêu tạo ra một nền tảng giáo dục trực tuyến hiệu quả. Website học toán tiếng Anh cấp 1 này sẽ cung cấp các bài học, bài tập, và trò chơi tương tác, giúp học sinh tiếp cận kiến thức một cách thú vị. Việc lựa chọn MERN Stack là do tính năng mở rộng, khả năng phát triển nhanh chóng và sự hỗ trợ mạnh mẽ từ cộng đồng. Đây là một lựa chọn phù hợp cho phát triển web ứng dụng giáo dục, đặc biệt cho đối tượng học sinh cấp 1. Giáo dục trực tuyến toán tiếng Anh ngày càng phổ biến, đòi hỏi các giải pháp công nghệ tiên tiến để đáp ứng nhu cầu. Website responsivewebsite giáo dục interactive là những yếu tố quan trọng cần được chú trọng. Nghiên cứu này tập trung vào việc áp dụng MERN Stack for education, cụ thể là các thành phần ReactJS trong giáo dục, NodeJS trong giáo dục, ExpressJS trong giáo dục, và MongoDB trong giáo dục. Phát triển web front-endphát triển web back-end được thực hiện một cách đồng bộ để tạo ra một sản phẩm hoàn chỉnh.

1.1 Phân tích Yêu cầu và Thiết kế

Phần này tập trung vào việc xác định yêu cầu của website học toán tiếng Anh cấp 1. Các yêu cầu bao gồm chức năng cơ bản như đăng nhập, đăng xuất, quản lý tài khoản người dùng (học sinh và giáo viên), quản lý nội dung bài học (tài nguyên học toán tiếng Anh), hệ thống bài tập và câu hỏi trắc nghiệm (bài tập toán tiếng Anh cấp 1, game học toán tiếng Anh), hệ thống đánh giá kết quả học tập. Thiết kế website giáo dục cần đảm bảo giao diện thân thiện, dễ sử dụng, accessible educational websites. Thiết kế hệ thống bao gồm thiết kế cơ sở dữ liệu sử dụng MongoDB lưu trữ thông tin người dùng, bài học, kết quả. API cho website giáo dục được thiết kế để đảm bảo tính khả năng mở rộng và tương tác giữa phát triển web front-endphát triển web back-end. Database cho website giáo dục cần đảm bảo hiệu suất cao và an toàn dữ liệu. Nghiên cứu cũng đề cập đến việc thiết kế website responsive, tương thích với nhiều thiết bị khác nhau. Các chức năng chính được thiết kế dựa trên usecasesequence diagram, đảm bảo sự logic và hiệu quả của hệ thống.

1.2 Công nghệ MERN Stack và triển khai

Phần này trình bày chi tiết về việc xây dựng website bằng MERN Stack. MERN Stack tutorial được tham khảo để hướng dẫn quá trình triển khai. MongoDB được sử dụng làm database cho website giáo dục, ExpressJS để xây dựng API cho website giáo dục, ReactJS cho phát triển web front-end, và NodeJS cho phát triển web back-end. Quá trình phát triển bao gồm các bước: thiết lập môi trường, lập trình các module chức năng, tích hợp các thành phần, kiểm thử và tối ưu hóa. MERN stack projects được chia nhỏ thành các module riêng biệt để dễ dàng quản lý và bảo trì. ReactJS được sử dụng để tạo ra giao diện người dùng trực quan, hấp dẫn và dễ sử dụng cho học sinh. NodeJS xử lý các yêu cầu từ phía client và tương tác với MongoDB để truy xuất và lưu trữ dữ liệu. ExpressJS đóng vai trò cầu nối giữa front-endback-end. Phát triển web ứng dụng giáo dục dựa trên nền tảng MERN Stack mang lại hiệu quả cao về thời gian và chi phí. Portfolio MERN stackcase study MERN stack là những tài liệu tham khảo hữu ích trong quá trình triển khai.

II. Kết quả và đánh giá

Kết quả của nghiên cứu là một website học toán tiếng Anh đầy đủ chức năng cho học sinh cấp 1. Website được thiết kế thân thiện, dễ sử dụng, và cung cấp nhiều bài học, bài tập, trò chơi tương tác. Việc sử dụng MERN Stack giúp website có hiệu suất cao, khả năng mở rộng tốt. Ứng dụng học toán tiếng Anh cho trẻ em này có tiềm năng ứng dụng rộng rãi trong giáo dục trực tuyến. Website interactivewebsite responsive mang lại trải nghiệm học tập tốt hơn cho học sinh. E-learning platform development bằng MERN Stack được đánh giá là một giải pháp hiệu quả. Nghiên cứu cũng đề xuất một số hướng phát triển trong tương lai, như tích hợp thêm nhiều tính năng mới, mở rộng nội dung bài học, và hỗ trợ nhiều ngôn ngữ khác.

2.1 Phân tích hiệu quả

Website được đánh giá cao về hiệu quả. Giao diện trực quan, dễ sử dụng. Hệ thống bài học, bài tập được thiết kế khoa học, phù hợp với lứa tuổi học sinh cấp 1. Việc sử dụng game học toán tiếng Anh giúp tăng tính hấp dẫn và hiệu quả học tập. Javascript for kids được ứng dụng một cách hiệu quả trong việc thiết kế các trò chơi tương tác. English for kids mathprimary school math/elementary school math được tích hợp chặt chẽ trong nội dung bài học. Math games for kids góp phần làm cho việc học toán trở nên thú vị hơn. Best practices for educational websites được áp dụng trong quá trình thiết kế và phát triển. Website đáp ứng được yêu cầu về accessible educational websites, đảm bảo tất cả học sinh đều có thể tiếp cận và sử dụng.

2.2 Hướng phát triển và ứng dụng

Nghiên cứu đề xuất một số hướng phát triển trong tương lai. Cập nhật nội dung bài học thường xuyên, bổ sung thêm nhiều chủ đề khác nhau. Tích hợp tính năng theo dõi tiến độ học tập của học sinh. Phát triển ứng dụng di động để thuận tiện cho việc học tập. Tích hợp hệ thống quản lý lớp học trực tuyến, cho phép giáo viên tương tác với học sinh. Thêm tính năng tương tác xã hội, cho phép học sinh trao đổi, chia sẻ kinh nghiệm. Cải thiện hiệu năng và bảo mật của website. Nghiên cứu ứng dụng trí tuệ nhân tạo (AI) để cá nhân hóa quá trình học tập cho từng học sinh. Tài nguyên học toán tiếng Anh cần được cập nhật liên tục. Học toán tiếng Anh lớp 1, học toán tiếng Anh lớp 2, học toán tiếng Anh lớp 3 cần được thiết kế riêng biệt. Tutorial MERN stack cần được cập nhật để đảm bảo tính hiện đại của website.

Tóm tắt và mô tả trên trang này được tạo với sự hỗ trợ của AI. Nếu bạn thấy nội dung không chính xác hoặc có vấn đề, vui lòng Báo lỗi nội dung.

01/02/2025

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

MỞ ĐẦU 1. Tính cấp thiết của đề tài Trong cuộc sống tất bật hiện nay, mọi việc đều được đơn giản và tối ưu hóa thời gian thông qua việc ứng dụng công nghệ thông tin vào xử lý các công việc hàng ngày. Theo thời gian, ngày càng có nhiều công nghệ mới thuộc lĩnh vực công nghệ thông tin ra đời, và việc cập nhật, tiếp thu công nghệ mới để tối ưu công việc là đều cấp thiết nếu không muốn bị tuột hậu so với lượng kiến thức khổng lồ của ngành. Bên cạnh công nghệ phát triển thì nhu cầu học tập online của học sinh, sinh viên cũng ngày càng gia tăng.

Các Website học tập lần lượt mọc lên như nấm, nhưng thực tế rằng, các Website học tập được tạo nên đa số đều hướng về các đối tượng là người lớn, học sinh cấp 02, cấp 03, sinh viên,… Nhưng đối với thực tế hiện nay, các em cấp 01 cũng đang có nhu cầu học tập thêm rất nhiều, và các em cũng đã được tiếp cận công nghệ từ rất sớm. Chính vì thế mà nhóm đã chọn đề tài “Xây dựng Website học toán & tiếng anh cho học sinh cấp 01 bằng công nghệ Mern Stack”, nhằm để học hỏi công nghệ mới đang rất được ưa chuộng là MernStack để có thể nâng cao kiến thức chuyên ngành và ứng dụng chúng vào thực tiễn khi ra trường, đồng thời cung cấp cho các em học sinh cấp 01 một nơi để học tập, rèn luyện thêm kiến thức. Mục đích của đề tài Đề tài ra đời với mục đích giúp sinh viên tổng hợp lại các kiến thức đã tiếp thu được trong quá trình học, đồng thời có cái nhìn tổng quan về lập trình. Là cơ hội để sinh viên tìm hiểu các công nghệ mới nhất và ứng dụng chúng vào thưc tiễn.

Xây dựng website giáo dục dành cho trẻ em, tạo sân chơi mới cho trẻ em phát triển, học hỏi. Cách tiếp cận và phương pháp nghiên cứu • Đối tượng nghiên cứu: - Tìm hiểu MernStack: định nghĩa MernStack và các thành phần. 15 do an • Phạm vi nghiên cứu: Với bài luận văn này, nhóm em sẽ tập trung tìm hiểu và thực hiện các nội dung sau: - Tìm hiểu các nội dung, kiến thức về MernStack - Sau khi tìm hiểu, nhóm sẽ tập trung vận dụng những kiến thức đã tìm hiểu để xây dựng website học tập toán và tiếng anh cho học sinh cấp 01. Kết quả dự kiến đạt được • Hiểu rõ kiến thức về MernStack: định nghĩa và các thành phần.

• Xây dựng thành công website học tập toán và tiếng anh cho học sinh cấp 01 16 do an Phần 2: NỘI DUNG CHƯƠNG 1: CƠ SỞ LÝ THUYẾT 1. MernStack là gì? Mern Stack là bộ combo open source các công nghệ liên quan đến JavaScript: MongoDB, ExpressJS, React/React Native, NodeJS. Mern: là viết tắt của 04 công cụ: M – MongoDB, E – ExpressJS, R – ReactJS, N – NodeJS. Stack: một chương trình hoàn thiện không chỉ có code, mà còn phải có nền tảng hệ điều hành và những phần mềm đi kèm (web server, cơ sở dữ liệu).

Người ta gom những thứ này lại với nhau tạo thành technical stack. ❖ MongoDB: ▪ MongoDB là một cơ sở dữ liệu mã nguồn mở và là cơ sở dữ liệu NoSQL hàng đầu, được hàng triệu người sử dụng. MongoDB được viết bằng C++. ▪ Ngoài ra, MongoDB là một cơ sở dữ liệu đa nền tảng, hoạt động trên các khái niệm Collection và Document, nó cung cấp hiệu suất cao, tính khả dụng cao và khả năng mở rộng dễ dàng.

▪ Một số thuật ngữ thường gặp trong MongoDB: o Database: là một Ô chứa dữ liệu ở mức vật lý (physical), mỗi database sẽ có nhiều collection và được thiết lập lưu trữ ở một nơi trong máy chủ máy tính. Một máy chủ MongoDB thường có thể tạo nhiều cơ sở dữ liệu. o Collection: là nhóm các tài liệu (document), nó tương đương với một bảng (table) trong CSDL thông thường nên mỗi collection sẽ thuộc về một database 17 do an duy nhất. Tuy nhiên nó có một sực khác biệt đó là nó không có ràng buộc Relationship như các hệ quản trị CSDL khác nên việc truy xuất rất nhanh, chính vì thế mỗi collection có thể chứa nhiều thể loại khác nhau không giống như table trong hệ quản trị mysql là các field cố định.

o Document: có cấu trúc tương tự như kiểu dữ liệu JSON, nghĩa là sẽ có các cặp (key => giá trị) nên nó có tính năng động rất lớn. Document ta có thể hiểu nó giống như các record dữ liệu trong MYSQL, tuy nhiên nó có sự khác biệt là các cặp (key => value) có thể không giống nhau ở mỗi document.js là một trong những framework phổ biến nhất trong Node.js, nó là một framework đơn giản nhưng đủ mạnh để giúp chúng ta tiếp cận cũng như phát triển website dựa trên framwork này. ▪ Xây dựng trên nền tảng của Nodejs. Nó cung cấp các tính năng mạnh mẽ để phát triển web hoặc mobile.

▪ Router là một Object (khác với Routing), nó là một instance riêng của middleware và routes. Chính vì nó là một instance của middleware và route nên nó có các chức năng của cả hai. Chúng ta có thể gọi nó là một mini- application. ▪ Các Application dùng ExpressJS làm core đều có phần Router được tích hợp sẵn trong đó.

▪ Router hoạt động như một middleware nên chúng ta có thể dùng nó như một arguments. Hoặc dùng nó như một arguments cho route khác. 18 do an ❖ ReactJS: ▪ Hiện nay các Web Dev đang nổi lên mô hình web single- page. Web single-page là tất cả các thao tác xử lý của trang web đều được diễn ra trên cùng một trang.

Việc này giúp nâng cao trải nghiệm người dùng, các thao tác xử lý của người dùng và animation,. đều được thực hiện một cách nhanh chóng và mượt mà. So với web single-page thì các web cũ xử lý dữ liệu khá lâu do phải phụ thuộc khá nhiều vào khả năng xử lý của server nên thường xuyên load trang mới hay nhưng trang nhiều logic sẽ khiến một số chức năng không được như ý muốn và dễ sinh ra Bug làm giảm trải nghiệm người dùng. Từ đó web single-page ra đời và các ngôn ngữ phát triển single-page ngày càng phát triển.

Trong số đó ReactJS đang là một thư viện mạnh nhất về phát triển single-page hiện nay.JS là một thư viện Javascript dùng để xây dựng giao diện người dùng do FaceBook tạo ra. ▪ Cho phép những nhà phát triển web tạo ra giao diện người dung nhanh chóng. Phần Views của Reactjs thường được hiển thị bằng việc chủ yếu dung các component mà chứa các component cụ thể hoặc các thẻ HTML. ❖ NodeJS: ▪ NodeJS là một hệ thống phần mềm được thiết kế để viết các ứng dụng internet có khả năng mở rộng, đặc biệt là máy chủ web.

Chương trình được viết bằng JavaScript, sử dụng kỹ thuật điều khiển theo sự kiện, nhập/ xuất không đồng bộ để tối thiểu tổng chi phí và tối đa khả năng mở rộng. NodeJS bao gồm có V8 JavaScript Engine của Google, libUV và vài thư viện khác NodeJS. 19 do an ▪ NodeJS có thể chạy trên nhiều nền tảng hệ điều hành khác nhau từ Window cho tới Linux, OSX nên đó cũng là một lợi thế. NodeJS cung cấp các thư viện phong phú ở dạng JavaScript Module khác nhau giúp đơn giản hóa việc lập trình và giảm thời gian ở mức thấp nhất.

NodeJS được xây dựng và chạy trên V8 Engine. V8 Engine dựa trên C++. Vì vậy, cuối cùng trái tim của NodeJS chính là C++. ▪ Ý tưởng chính của NodeJS là sử dụng non – blocking, hướng sự vào ra dữ liệu thông qua các tác vụ thời gian thực một cách nhanh chóng.

Bởi vì NodeJS có khả năng mở rộng nhanh chóng, khả năng xử lý một số lượng lớn các kết nối đồng thời bằng thông lượng cao. Nếu như các ứng dụng web truyền thống, các request tajora một luồng xử lý yêu cầu mới và chiếm RAM của hệ thống thì việc tài nguyên của hệ thống sẽ được sử dụng không hiệu quả. Chính vì lẽ đó giải pháp mà NodeJS đưa ra là sử dụng luồng đơn (Single – Threaded), kết hợp với non – blocking I/O để thực thi các request, cho phép hỗ trợ hang chục ngàn kết nối đồng thời. 20 do an 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. Tienganh123 ( https://www.com/ ) ❖ Các giao diện chính Hình 1 Giao diện website tienganh123 ❖ Những tính năng chính • Đăng nhập, đăng ký • Đăng nhập qua facebook, gmail, yahoo • Học tập theo nội dung từng lớp • Học tập qua video • Học tập qua trò chơi • Rèn luyện kỹ năng 21 do an • Làm kiểm tra • Thi đấu ❖ Ưu điểm • Giao diện dễ thương • Đảm bảo đầy đủ chức năng cơ bản của một website học tập • Nhiều chức năng sáng tạo hỗ trợ việc học tập không nhàm chán • Dễ sử dụng ❖ Khuyết điểm • Giao diện dàn trãi không làm nổi bật được chức năng chính của website 22 do an 2. Luyenthi123 ( https://www.com/ ) ❖ Các giao diện chính Hình 2 Giao diện website Luyenthi123 ❖ Những tính năng chính • Đăng nhập, đăng ký • Học tập theo lớp • Làm kiểm tra • Thi đấu • Diễn đàn trao đổi 23 do an ❖ Ưu điểm • Đảm bảo đầy đủ chức năng cơ bản của một website học tập • Giao diện đơn giản, dễ nhìn ❖ Khuyết điểm • Diễn đàn trao đổi những vấn đề không liên quan học tập, câu từ không phù hợp 2. Kết luận Thông qua những trang web đã khảo sát, có thể rút ra các chức năng cần thiết phải có của một website học tập.

Bên cạnh đó, những ưu điểm và hạn chế của các trang web đã khảo sát cũng giúp nhóm rút ra những lưu ý cần thiết để có thể áp dụng vào website của mình một cách hoàn thiện hơn. XÁC ĐỊNH YÊU CẦU 2. Nhận diện tác nhân và các chức năng trong sơ đồ usecase Bảng 1Nhận diện tác nhân và các chức năng trong sơ đồ usecase Tác nhân Chức năng Người dùng Đăng ký tài khoản. Đăng nhập / Đăng xuất ( với tài khoản đã đăng ký) Học tập Kiểm tra Xem tin tức giáo dục Người quản lý Thêm, xóa, sửa user Thêm, xóa, sửa câu hỏi Thêm, xóa, sửa đề thi Thêm, xóa, sửa tin tức Thêm, xóa, sửa nội dung bài học Thêm, xóa, sửa kết quả thi Đăng nhập, đăng xuất 24 do an 2.

Lược đồ usecase Hình 3 Lược đồ Usecase 2. Mô tả usecase 2. Usecase đăng nhập Bảng 2 Usecase đăng nhập Tên usecase Đăng nhập Mô tả Đăng nhập vào website Tác nhân kích hoạt Users, Admin Điều kiện kích hoạt Tài khoản đã đăng ký với hệ thống, đang trong trạng thái chưa đăng nhập Luồng sự kiện chính 1.

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

Bài viết "Xây dựng website học toán tiếng Anh cho học sinh cấp 1 bằng công nghệ MERN Stack" trình bày một giải pháp hiệu quả để phát triển một nền tảng học tập trực tuyến dành cho học sinh tiểu học. Sử dụng công nghệ MERN Stack, bài viết không chỉ hướng dẫn cách xây dựng website mà còn nhấn mạnh tầm quan trọng của việc học toán bằng tiếng Anh trong bối cảnh toàn cầu hóa. Những lợi ích mà website này mang lại bao gồm việc cải thiện khả năng ngôn ngữ, phát triển tư duy logic và tạo ra môi trường học tập tương tác cho trẻ em.

Nếu bạn quan tâm đến việc áp dụng công nghệ trong giáo dục, hãy khám phá thêm về Đồ án hcmute xây dựng web học tiếng anh online, nơi bạn sẽ tìm thấy những phương pháp hiệu quả để học tiếng Anh trực tuyến. Ngoài ra, bài viết Skkn một số giải pháp nâng cao chất lượng dạy học trực tuyến chủ đề hệ thức lượng trong tam giác sẽ cung cấp cho bạn những chiến lược cải thiện chất lượng giảng dạy trực tuyến. Cuối cùng, bạn có thể tham khảo Hcmute các yếu tố quyết định kết quả học tập của sinh viên trong giáo dục trực tuyến ở trường đại học sư phạm kỹ thuật thành phố hồ chí minh để hiểu rõ hơn về các yếu tố ảnh hưởng đến kết quả học tập trong môi trường trực tuyến. Những tài liệu này sẽ giúp bạn mở rộng kiến thức và áp dụng hiệu quả hơn trong lĩnh vực giáo dục trực tuyến.