Đồ án HCMUTE: Xây dựng website học tiếng Anh online

Đồ án nghiên cứu hcmute xây dựng web học tiếng anh online, áp dụng công nghệ tiên tiến, tối ưu giải pháp kỹ thuật cho bài toán kỹ thuật.

Chuyên ngành

Công Nghệ Thông Tin

Người đăng

Ẩn danh

Thể loại

đồ án tốt nghiệp

2020

101
2
0

Phí lưu trữ

35 Point

Mục lục chi tiết

PHIẾU NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN

PHIẾU NHẬN XÉT CỦA GIÁO VIÊN PHẢN BIỆN

LỜI CẢM ƠN

TÓM TẮT ĐỒ ÁN TỐT NGHIỆP TIẾNG VIỆT

TÓM TẮT ĐỒ ÁN TỐT NGHIỆP TIẾNG ANH

MỤC LỤC

DANH MỤC CÁC TỪ VIẾT TẮT

DANH SÁCH CÁC BIỂU ĐỒ VÀ HÌNH ẢNH

DANH SÁCH CÁC BẢNG

1. MỞ ĐẦU

1.1. LÝ DO CHỌN ĐỀ TÀI

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

1.3. CÁCH TIẾP CẬN VÀ NGIÊN CỨU

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

2. PHẦN NỘI DUNG

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

3.1. Giới thiệu Angular 8 CLI

3.2. Tính năng mới trong Angular 8 CLI

4. CHƯƠNG 2: XÁC ĐỊNH MÔ HÌNH VÀ HÓA YÊU CẦU

4.1. XÁC ĐỊNH YÊU CẦU

4.2. THIẾT KẾ USECASE DIAGRAM

4.3. ĐẶC TẢ USECASE

5. CHƯƠNG 3: THIẾT KẾ CƠ SỞ DỮ LIỆU

5.1. THIẾT KẾ DỮ LIỆU

5.2. MÔ TẢ CHI TIẾT CÁC BẢNG

6. CHƯƠNG 4: THIẾT KẾ GIAO DIỆN VÀ XỬ LÝ

6.1. MÀN HÌNH QUẢN LÝ ĐỀ THI

6.2. MÀN HÌNH QUẢN LÝ CÂU HỎI

6.3. MÀN HÌNH QUẢN LÝ METADATA TYPE

6.4. MÀN HÌNH QUẢN LÝ METADATA VALUE

6.5. MÀN HÌNH QUẢN LÝ SẢN PHẨM

6.6. MÀN HÌNH QUẢN LÝ TẠO ĐỀ THI

6.7. MÀN HÌNH THÀNH TÍCH

6.8. MÀN HÌNH TRANG CHỦ

6.9. MÀN HÌNH CỬA HÀNG

6.10. MÀN HÌNH QUY TRÌNH ĐẶT HÀNG BƯỚC 1

6.11. MÀN HÌNH HIỂN THỊ QUY TRÌNH ĐẶT HÀNG BƯỚC 2

6.12. MÀN HÌNH QUẢN LÝ GIAO HÀNG THÀNH CÔNG

6.13. MÀN HÌNH QUẢN LÝ HÓA ĐƠN

6.14. MÀN HÌNH LÀM BÀI THI

6.15. MÀN HÌNH LUYỆN TẬP

6.16. MÀN HÌNH XEM LẠI BÀI THI

6.17. MÀN HÌNH NGỮ PHÁP

6.18. MÀN HÌNH NGỮ PHÁP LÝ THUYẾT

6.19. MÀN HÌNH NGỮ PHÁP LUYỆN TẬP

6.20. MÀN HÌNH NGỮ PHÁP KIỂM TRA

6.21. MÀN HÌNH CẬP NHẬT MẬT KHẨU

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

7.1. CÀI ĐẶT MÔI TRƯỜNG LẬP TRÌNH

7.2. NHỮNG KẾT QUẢ ĐẠT ĐƯỢC

7.3. NHƯỢC ĐIỂM

7.4. HƯỚNG PHÁT TRIỂN

TÀI LIỆU THAM KHẢO

Tóm tắt

I. Học tiếng Anh Online Hiệu quả

Bài viết tập trung phân tích học tiếng Anh online, đặc biệt nhấn mạnh hiệu quả của phương pháp này. Nội dung đề cập đến các khía cạnh như lựa chọn nguồn học tập phù hợp, ứng dụng công nghệ hỗ trợ, và chiến lược học tập cá nhân hóa. Đề tài tốt nghiệp tập trung xây dựng một trang web học tiếng Anh online, cung cấp một giải pháp tích hợp nhiều tính năng học tập đa dạng. Việc áp dụng công nghệ hiện đại trong thiết kế và phát triển trang web đã được đề cập, với việc sử dụng các framework phổ biến như .NET CoreAngular 8 CLI. Đây được coi là một phương pháp học tiếng Anh hiệu quả trong bối cảnh hiện nay.

1.1 Ưu điểm của Học tiếng Anh Online

Học tiếng Anh online mang lại nhiều lợi ích. Tiết kiệm thời gian là một ưu điểm nổi bật, người học có thể linh hoạt sắp xếp thời gian học tập phù hợp với lịch trình cá nhân. Tiết kiệm chi phí so với các hình thức học truyền thống cũng là một yếu tố thu hút. Học viên tiếp cận nguồn tài nguyên phong phú, đa dạng, bao gồm bài giảng, bài tập, và các công cụ hỗ trợ khác. Sự tiện lợi của học tiếng Anh online cho phép người học truy cập mọi lúc mọi nơi, qua nhiều thiết bị khác nhau. Tuy nhiên, cần lưu ý đến kinh nghiệm học tiếng Anh online, và khả năng tự quản lý thời gian của người học để đạt hiệu quả cao. Việc lựa chọn giáo trình tiếng Anh online phù hợp và phần mềm học tiếng Anh online chất lượng cũng là yếu tố quyết định sự thành công.

1.2 Thách thức và giải pháp

Mặc dù có nhiều ưu điểm, học tiếng Anh online cũng đặt ra một số thách thức. Sự thiếu tương tác trực tiếp giữa giáo viên và học viên có thể gây khó khăn trong việc giải đáp thắc mắc và nhận phản hồi kịp thời. Khả năng tự học và kỷ luật tự giác đóng vai trò quan trọng trong việc đảm bảo hiệu quả học tập. Để khắc phục điều này, cần có sự chuẩn bị kỹ lưỡng về mặt tài liệu, giáo trình, cũng như kế hoạch học tập rõ ràng. Việc sử dụng các ứng dụng học tiếng Anh onlinewebsite học tiếng Anh online chất lượng cao hỗ trợ quá trình học tập hiệu quả hơn. Người học cần chủ động tìm kiếm nguồn học tiếng Anh online miễn phí chất lượng hoặc tham gia các khóa học tiếng Anh online giá rẻ nhưng vẫn đảm bảo chất lượng. Review khóa học tiếng Anh online từ những người đã học cũng là nguồn tham khảo hữu ích.

II. Học Tiếng Anh Tại HCMUTE

Đề tài tốt nghiệp tập trung vào việc xây dựng một trang web học tiếng Anh online tại HCMUTE. Đây là một dự án đáng chú ý, kết hợp kiến thức về công nghệ thông tin với nhu cầu học tập tiếng Anh ngày càng cao. Việc thiết kế và phát triển trang web dựa trên nền tảng .NET CoreAngular 8 CLI, cho thấy sự ứng dụng của công nghệ hiện đại trong giáo dục. Trang web tích hợp nhiều chức năng, đáp ứng nhu cầu đa dạng của người học, từ việc luyện tập ngữ pháp, làm bài kiểm tra đến mua sắm tài liệu học tập. Việc xây dựng thành công trang web này góp phần thúc đẩy học tiếng Anh tại HCMUTE hiệu quả hơn.

2.1 Tính năng của Trang Web Học Tiếng Anh Online

Trang web học tiếng Anh online tại HCMUTE được thiết kế với nhiều tính năng hữu ích. Phần quản trị (Admin) cho phép quản lý toàn bộ nội dung, bao gồm câu hỏi, đề thi, sản phẩm, tài khoản người dùng. Phần dành cho người dùng (Client) cung cấp các bài luyện tập đa dạng, hệ thống thi trực tuyến, và cửa hàng trực tuyến mua các sản phẩm hỗ trợ học tập. Luyện thi tiếng Anh online, đặc biệt là các kỳ thi IELTS onlineTOEIC online, là một tính năng quan trọng. Trang web còn cung cấp các khóa học học tiếng Anh giao tiếp onlinehọc tiếng Anh cho người mất gốc online. Các tính năng như ôn thi tiếng Anh onlinebài tập tiếng Anh online giúp người dùng tự học hiệu quả. Chất lượng của giáo trình tiếng Anh online và sự hỗ trợ kỹ thuật kịp thời là yếu tố cần được quan tâm.

2.2 Ứng dụng và Triển vọng

Việc xây dựng trang web học tiếng Anh online tại HCMUTE có ý nghĩa to lớn. Nó cung cấp một giải pháp tiện lợi và hiệu quả cho sinh viên và cộng đồng muốn học tiếng Anh. Việc tích hợp công nghệ hiện đại giúp nâng cao trải nghiệm học tập, tăng tính tương tác và hiệu quả. Trang web có thể mở rộng thêm nhiều tính năng trong tương lai, như tích hợp với các nền tảng học tập khác, cá nhân hóa nội dung học tập theo nhu cầu từng người. Việc nghiên cứu và phát triển các ứng dụng học tiếng Anh online tốt nhấtphần mềm học tiếng Anh online tốt nhất sẽ giúp cải thiện chất lượng học tập online. Sự thành công của dự án này có thể là tiền đề cho việc ứng dụng công nghệ thông tin vào giảng dạy các môn học khác tại HCMUTE.

01/02/2025

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

CHƯƠNG 1: CƠ SỞ LÝ THUYẾT  Dùng công cụ này chúng ta có thể build ứng dụng như là một incremental build (build chỉ những gì thay đổi) và deploy chỉ với những gì thay đổi hơn là toàn bộ ứng dụng.  Chúng ta có thể ẩn file Bazel đi. - Differential Loading cho việc tối ưu hóa hiệu năng  Một trong những tính năng rất hay trong Angular CLI 8. Bởi vì nó giúp chúng ta chỉ ra trình duyệt nào sẽ được target và CLI sẽ build ứng dụng với các bundle JS liên quan cần thiết.

Trình duyệt target mặc định trong tsconfig.json file giờ là es2015. Nghĩa là khi CLI build ứng dụng, nó sẽ build ứng dụng trong một trình duyệt cũ hơn như là IE9 sau đó chúng ta cần chỉ ra nó trong file browserlist. File này tòn tại trong thư mục gốc của ứng dụng và sử dụng. - Thay đổi Lazy Loading trong Route  Trong Angular từ khi khởi đầu cho đến nay, cơ chế router luôn hỗ trợ khái niệm lazy loading.

Đến Angular 7 nó đã được hoàn thiện:  Giá trị trước dấu # chỉ ra đường dẫn đến module file mà module đó tồn tại, còn sau dấu # chỉ ra tên của class Module. Phong cách này vẫn làm việc trong Angular 8, nhưng cách để viết lazy module được thay đổi. Chuỗi giá trị của loadChidren bị deprecated. Giờ loadChildren được khai báo như sau: - Hỗ trợ Web Worker  Như chúng ta đã biết JavaScript luôn thực thi đơn thread.

Nó là điều tốt khi thực thi lượng lớn dữ liệu hoặc gọi liên tiếp nhau trong phương pháp bất đồng bộ. Nhưng theo kịch bản ứng dụng thực tế, khái niệm này không giúp gì nhiều. Đó là tại sao ngày này tất cả các trình duyệt web hỗ trợ web workder process. Cơ bản là web worker process là các script được thực thi bởi trình duyệt trong một thread tách biệt.

Giao tiếp với 5 do an CHƯƠNG 1: CƠ SỞ LÝ THUYẾT các thread đó trong trình duyệt sẽ có thể gửi tin nhắn. Nhìn chung, web worker không liên quan đến Angular nhưng điểm chính là các script này cần được xem xét trong build process của ứng dụng. Mục tiêu chính là cung cấp một bundle cho tất cả web worker. Giờ Angular 8 đã thực hiện công việc này bởi Angular CLI.

 Theo chúng ta có thể cấu hình Angular CLI nếu chúng ta thêm web worker cho lần đầu tiên. Trong quá trình này, CLI sẽ loại bỏ các worker.ts từ tsconfig.json và thêm các cấu hình TypeScript với tên là tsconfig.json để quản lý file worker. CÁc thông tin này cũng được thêm vào angular. - Thu thập phân tích dữ liệu sử dụng:  Với Angular 8, Angluar CLI thu thập các dữ liệu phân tích cho Angular team có thể sắp xếp ưu tiên các tính năng và các cải tiến.

Khi chúng ta update ứng dụng CLI, nó sẽ hỗ trợ tùy chọn ng analytics.  Nếu chúng ta cho phép nó chạy toàn bộ, nó sẽ thu thập dữ liệu như các lệnh được sử dụng, các cờ được sử dụng, hệ điều hành, phiên bản Node, CPU count, Ram Size, thời gian thực thi, lỗi nếu có và Angular team có thể cải tiến và chỉnh sửa trong phiên bản tiếp. - Loại bỏ @angular/http:  Từ Angular 8, angular ngừng hỗ trợ @angular/http. Nó đã bị deprecated (báo ngừng hỗ trợ phiên bản sau) từ Angular 4 và cung cấp một thư viện hiệu quả và bảo mật hơn gọi là @angular/common/http.

 Nhưng ở Angular 7 vẫn cho phép chúng ta sử dụng @angular/http trong ứng dụng. Nhưng Angular 8 thì nó đã dừng hỗ trợ. Chúng ta cần chỉnh code lên @angular/common/http. - Thay đổi ViewChild và ContentChild:  Trong Angular 8 có một số thay đổi lớn với việc sử dụng ViewChild và ContentChild.

Nó là những thứ không mong đợi của team Angular.  Hiện tại Angular 8 nó bắt buộc cung cấp một cờ Boolean static để định nghĩa instance cho ViewChild và ConetntChild.  Chúng ta đã có kinh nghiệm khi 1 issue thỉnh thoảng là các instance này có sẵn trong ngOnInit, nhưng đôi khi chúng ta không tìm thấy các instance này cho đến khi ngAfterContentInit hoặc ngAfterViewInit.  Nó xuất hiện chính khi các phần thử được load vào DOM sau khi dữ liệu được binding.

(giống *ngIf hoặc *ngFor) sau đó các phần thử được insert vào DOM trong ngAfterViewInit hoặc ngAfterContentInit. 6 do an CHƯƠNG 1: CƠ SỞ LÝ THUYẾT  Điều này gây hiểu lầm và đó là vì sao chúng ta cần chỉ ra compoinent:  Nếu giá trị static là true, angular sẽ cố tìm kiếm phần tử tở thời điểm khởi tạo component, ví dụ ngOnInit. Nó có thể hoàn thành khi phần tử không được sử dụng bất kỳ structure directive nào. Khi static value là false, angular sẽ tìm phần tử sau khi khởi tạo view.

- Hỗ trợ SVG Template:  Hiện tại Angular 8 hỗ trợ template với đuôi mở rộng là SVG. Nghĩa là chúng ta có thể dùng file SVG để làm template như HTML mà không cần cấu hình gì khác cả.  Nhưng câu hỏi là tại sao phải sử dụng .svg như là template thay vì sử dụng image trong HTML file. Lý do là khi sử dụng SVG template, chúng ta có thể sử dụng như là một directive và kết quả chúng ta có thể bind nó như HTML template.

Với các tiếp cận này, chúng ta có thể tạo động các đồ hoạt tương tác trong ứng dụng. - Hỗ trợ PNPM:  Trong Angular 8, Angular CLI cũng hỗ trợ một package manager mới PNPM bao gồm NPM và Yarn. Trong câu lệnh ng add giờ cung cấp thêm 1 cái cờ nữa là –registry để thêm các packages từ bất cứ NPM private nào. Câu lệnh này đã có sẵn trên Angular CLI với ng update command.

- Hỗ trợ Codelyzer 5.0:  Angular 8 hỗ trợ cấu hình TSLint bởi Codelyzer 5. Phiên bản này của Codelyzer, một vài quy tắc được đổi tên. Nhưng khi chúng ta upgrade Angular CLI, nó sẽ update file cấu hình TSLint. CLI update sẽ loại bỏ các lệnh import es6 từ file polyfills.

Bởi vì nó tự động được thêm vào nếu được yêu cầu bởi CLI. - Hỗ trợ thư viện mới New Builders/ Architect API: 7 do an CHƯƠNG 1: CƠ SỞ LÝ THUYẾT  Phiên bản mới của Angular CLI cho phép chúng ta sử dụng phiên bản mới của Builders được biết đến là Architect API. Angular sử dụng Builders API để thực hiện các hoạt động như server, build, test, lint và e2e. Chúng ta có thể sử dụng builders trong file angular.3 Ưu điểm và nhược điểm của Angular 8 CLI - Ưu điểm:  Angular được phát triển trên nền tảng hiện đại hơn, nhiều tính năng, và dễ dàng cho người mới học hơn.

 Với Angular 1, các nhà phát triển đã biết về sự khác nhau giữa Controllers, Services, Factories, Providers và các khái niệm khác có thể gây ra sự khó hiểu đặc biệt là các coder mới. Angular 8 là một framework với sự sắp xếp hợp lý hơn cho phép lập trình viên tập trung vào việc tạo lên các class JavaScript đơn giản. Views và các controllers sẽ được thay thế bởi Components, thứ mà có thể mô tả là một sự tinh chế mới của directives. Ngay cả các lập trình viên có kinh nghiệm với Angular cũng không chắc là có thể biết tất cả những khả năng của directives.

Angular 8 component đã tăng khả năng đọc đáng kể, các API của chúng giảm đáng kể các biệt ngữ hơn là Angular 1.  Angular 8 được viết với TypeScript, một superset của JavaScript, nó triển khai nhiều tính năng của ES2016 và các tính năng của TypeScript.  Bằng cách tập trung tạo nên một framework dễ dàng hơn trong việc xử lý, Angular2 cho phép hệ sinh thái phát triển phong phú hơn.  Các lập trình viên có thể sử dụng các trình soạn thảo tinh vi hơn với các tính năng gợi ý code hay tự động hoàn thành code.

 Những tính năng này giúp giảm thời gian học Angular2. May mắn hơn nữa cho các nhà phát triển ES5 truyền thống rằng không nhất thiết phải viết ES6 hay TypeScript, các coder có thể vẫn viết JavaScript thuần mà không cần biên dịch.  Mặc dù được viết lại hoàn toàn, Angular 8 vẫn giữ lại các khái niệm cốt lõi và các quy tắc của Angular1. Điều đó có nghĩa là các lập trình viên giỏi vói Angular1 sẽ dễ dàng chuyển đổi sang Angular 8 hơn là các thư viện khác như ReactJS.

 Angular 8 được thiết kế cho mobile từ ban đầu. Bỏ qua một bên các vấn đề về sức mạnh xử lý, các thiết bị di động có các tính năng khác và sự giới hạn đó phân biệt chúng với máy tính truyền thống. Giao diện chạm, màn hình nhỏ, phần cứng đã được tính toán trong Angular 8. Máy tính để bàn cũng sẽ được cải tiến về hiệu suất và khả năng đáp ứng.

 Angular 8 giống React và các framework hiện đại khác, có thể tăng hiệu năng bằng cách render ra HTML trên server hoặc ngay cả trên browser. 8 do an CHƯƠNG 1: CƠ SỞ LÝ THUYẾT Phụ thuộc vào thiết kế cấu trúc giúp cho trải nghiệm người dùng tốt hơn.  Yêu cầu về hiệu năng không bao giờ là dừng lại với việc tiền xử lý. Angular 8 có khả năng tích hợp với mobile bằng cách tích hợp với NativeScript, một thư viện mã nguồn mở là cậu nỗi giữa JavaScript và mobile.

Bổ sung thêm, Ionic cũng đang được phát triển trên Angular8 cung cấp một cách khác giúp tăng hiệu quả của ứng dụng trên mobile.  Phiên bản đầu tiên của Angular cung cấp cho các lập trình viên một thư viện mềm dẻo để phát triển ứng dụng. Đây là sự thay đổi đáng kể cho các lập trình viên web, và trong khi framework rất hữu ích thì nó là một bằng chứng cho sự linh hoạt đó. Qua thời gian, các best practice từ cộng đồng được tán thành rộng rãi.x đã cố gắng làm việc xung quanh các hạn chế trên trình duyệt liên quan đến JavaScript.

Điều này được giải quyết bằng cách cung cấp một hệ thống các module sử dụng cơ chế Dependency Injection. Điều này thật tuyệt tuy nhiên có một vài vấn đề.x sử dụng hệ thống module ECMA Script 6 (ES6), và các công cụ đóng gói hiện đại như Webpack hoặc SystemJS. Module được tùy biến theo cách riêng của Angular để dễ dàng viết các Generic cho JS để cắm vào Angular. Hệ thống module mới giúp dễ dàng phát triển các dự án lớn hiệu quả hơn.2 ANT-DESIGN(NG-ZORRO) - Ng-Zoro là thư viện Angular UI ng-zorro-antd chứa một bộ các thành phần và bản trình diễn chất lượng cao để xây dựng giao diện người dùng tương tác phong phú.

- Các tính năng (Đoạn này bọn em xin được viết tiếng anh vì quá nhiều từ ngữ chuyên ngành):  An enterprise-class UI design language for web applications.  A set of high-quality Angular components out of the box.  Written in TypeScript with complete defined types.  Support OnPush mode, high performance.

 Support Customize theme.

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

Bài viết "Học tiếng Anh online hiệu quả tại HCMUTE" cung cấp những phương pháp và chiến lược hữu ích để học tiếng Anh trực tuyến, đặc biệt dành cho sinh viên tại HCMUTE. Nội dung bài viết nhấn mạnh tầm quan trọng của việc tự học và sử dụng các công cụ công nghệ thông tin để nâng cao kỹ năng ngôn ngữ. Độc giả sẽ tìm thấy những lợi ích từ việc học online, như tính linh hoạt về thời gian và khả năng tiếp cận tài liệu phong phú.

Để mở rộng thêm kiến thức về việc ứng dụng công nghệ trong giáo dục, bạn có thể tham khảo bài viết Xây dựng và phát triển ứng dụng học và kiểm tra tiếng anh thông minh trên nền tảng dịch vụ điện toán đám mây google luận văn thạc sĩ, nơi giới thiệu về các ứng dụng học tiếng Anh hiện đại. Ngoài ra, bài viết Luận văn thạc sĩ hệ thống thông tin quản lý tìm hiểu và xây dựng website học tập trực tuyến elearning trung tâm giáo dục thường xuyên tân bình dựa trên hệ thống moodle sẽ giúp bạn hiểu rõ hơn về việc xây dựng nền tảng học tập trực tuyến. Cuối cùng, bài viết Luận văn thạc sĩ giáo dục học vận dụng mô hình học hợp tác với sự hỗ trợ của máy vi tính vào dạy học chương điện học vật lí 9 trung học cơ sở cũng mang đến cái nhìn sâu sắc về việc áp dụng công nghệ trong giảng dạy. Những tài liệu này sẽ giúp bạn có cái nhìn toàn diện hơn về việc học và dạy tiếng Anh trong môi trường số.