CHƯƠNG 1: CƠ SỞ LÝ THUYẾT 1. Giới thiệu về ASP. Tổng quan về ASP.Net Core ASP.NET Core là một framework mới của Microsoft, 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. Ứ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.
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. Đặc điểm của ASP.Net Core ASP.Net Core có một số thay đổi kiến trúc lớn, đó là kết quả của việc học hỏi rất nhiều từ các framework module hóa khác.Net Core không còn dựa trên System.
Nó được dựa trên một tập hợp các gói, các module hay cũng được gọi là các Nuget packages. Điều này cho phép bạn tối ưu ứng dụng của bạn để chỉ bao gồm những packages nào cần thiết. Lợi ích của nó là giúp cho ứng dụng nhỏ hơn, bảo mật chặt chẽ hơn, giảm sự phức tạp, tối ưu hiệu suất hoạt động và giảm chi phí, thời gian cho việc phát triển. Các cái tiến của ASP.Net Core so với các phiên bản trước: − 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 cá nhâ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 quá 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. BÁO CÁO KHÓA LUẬN TỐT NGHIỆP Trang 14 1.Net core Bảng 1.NET Phiên bản Cập nhật Hỗ trợ Phiên bản Phát hành Phát hành với cuối cuối cùng đến Visual Studio 27 - 6 - .16 14 – 5 - 2019 2015 Update 3 2019 Visual Studio 27 - 6 - .NET 7 (dự kiến) kiến) 11 - 2023-11 (dự (dự kiến 2026 .NET 8 kiến) là LTS) (dự kiến) BÁO CÁO KHÓA LUẬN TỐT NGHIỆP Trang 15 1. Giới thiệu về Flutter 1.
Tổng quan về Flutter Flutter là một framework phát triển ứng dụng di động mã nguồn mở do Google phát triển. Được công bố lần đầu tiên vào năm 2017, Flutter đã trở thành một công cụ mạnh mẽ cho việc xây dựng giao diện người dùng đẹp mắt và ứng dụng di động đa nền tảng. Đặc điểm của Flutter − Ngôn Ngữ Lập Trình: Flutter sử dụng Dart làm ngôn ngữ lập trình chính. Dart là một ngôn ngữ hiện đại, có tính năng đối tượng và được tối ưu hóa để xây dựng các ứng dụng di động.
− Tính Đa Nền Tảng: Flutter cho phép phát triển ứng dụng đa nền tảng từ một mã nguồn duy nhất. Điều này có nghĩa là bạn có thể xây dựng ứng dụng cho cả iOS và Android từ cùng một dự án. − Widget và Giao Diện Người Dùng: Widget là một khái niệm quan trọng trong Flutter. Mọi thứ trong Flutter đều là một widget, từ một nút đơn giản đến toàn bộ màn hình ứng dụng.
Flutter cung cấp một thư viện đa dạng của các widget để xây dựng giao diện người dùng phong phú và linh hoạt. − Hot Reload: Hot Reload là một tính năng quan trọng của Flutter, giúp nhà phát triển xem ngay lập tức những thay đổi mà họ thực hiện trong mã nguồn, mà không cần khởi động lại ứng dụng. − Hiệu Suất Cao: Với sự tối ưu hóa của Dart và sự linh hoạt của Flutter, ứng dụng Flutter có thể đạt được hiệu suất cao và trải nghiệm người dùng mượt mà. − Cộng Đồng Mạnh Mẽ: Flutter có một cộng đồng đông đảo và tích cực, với nhiều tài liệu, bài giảng, và gói phần mềm (packages) được cung cấp bởi cộng đồng.
− Được Sử Dụng Rộng Rãi: Flutter đã được sử dụng trong nhiều ứng dụng nổi tiếng như Google Ads, Alibaba, Reflectly, và nhiều ứng dụng khác. − Định Hình Tương Lai: Flutter không chỉ được sử dụng cho ứng dụng di động, mà còn mở rộng để hỗ trợ phát triển ứng dụng web và desktop, mở rộng sức mạnh của nó thành một framework đa năng. Các phiên bản Flutter − Flutter 1.0 (December 4, 2018): o Phiên bản đầu tiên được công bố chính thức. o Chứa nhiều tính năng và cải tiến so với các phiên bản beta trước đó.2 (February 26, 2019): o Cải thiện về hiệu suất và ổn định.
o Bao gồm nhiều tính năng mới và cải thiện hot reload.5 (May 7, 2019): o Hỗ trợ macOS và là bản xem trước cho Embedder API cho Flutter. o Tích hợp các cập nhật cho Dart 2. BÁO CÁO KHÓA LUẬN TỐT NGHIỆP Trang 16 − Flutter 1.7 (July 11, 2019): o Hỗ trợ AndroidX. o Cải thiện hiệu suất và tốc độ khởi động ứng dụng.12 (December 11, 2019): o Cập nhật Dart 2.
o Cải thiện tính ổn định và hiệu suất.17 (May 6, 2020): o Tích hợp Dart 2. o Cải thiện hot reload và hiệu suất khởi động ứng dụng.0 (March 3, 2021): o Công bố chuyển đổi từ Flutter 1.0, với nhiều cập nhật và tính năng mới. o Hỗ trợ chính thức cho web và desktop (beta). o Tích hợp Dart 2.5 (August 17, 2021): o Tích hợp Dart 2.
o Cập nhật nhiều tính năng mới và cải thiện hiệu suất.8 (November 3, 2021): o Tích hợp Dart 2. o Cải thiện tích hợp với các công nghệ web mới như PWA (Progressive Web App). Giới thiệu về RESTFul API 1. Định nghĩa RESTful API là một tiêu chuẩn dùng trong việc thiết kế API cho các ứng dụng web (thiết kế Web services) để tiện cho việc quản lý các resource.
Nó chú trọng vào tài nguyên hệ thống (tệp văn bản, ảnh, âm thanh, video, hoặc dữ liệu động…), bao gồm các trạng thái tài nguyên được định dạng và được truyền tải qua HTTP. RESTful là một trong những kiểu thiết kế API được sử dụng phổ biến ngày nay để cho các ứng dụng (web, mobile…) khác nhau giao tiếp với nhau. Các thành phần RESTFul API API (Application Programming Interface) là một tập các quy tắc và cơ chế mà theo đó, một ứng dụng hay một thành phần sẽ tương tác với một ứng dụng hay thành phần khác. API có thể trả về dữ liệu mà bạn cần cho ứng dụng của mình ở những kiểu dữ liệu phổ biến như JSON hay XML.
REST (REpresentational State Transfer) là một dạng chuyển đổi cấu trúc dữ liệu, một kiểu kiến trúc để viết API. Nó sử dụng phương thức HTTP đơn giản để tạo cho giao tiếp giữa các máy. Vì vậy, thay vì sử dụng một URL cho việc xử lý một số thông tin BÁO CÁO KHÓA LUẬN TỐT NGHIỆP Trang 17 người dùng, REST gửi một yêu cầu HTTP như GET, POST, DELETE, vv… đến một URL để xử lý dữ liệu. Hình 1 RESTFul API BÁO CÁO KHÓA LUẬN TỐT NGHIỆP Trang 18 CHƯƠNG 2: KHẢO SÁT HIỆN TRẠNG VÀ GIỚI THIỆU ĐỀ TÀI 2.
Khảo sát hiện trạng 2. Khảo sát thực tế Hiện nay trên thế giới có rất nhiều các trang mạng xã hội khác nhau, một trong số đó được ưa chuộng nhiều và sử dụng nhiều hơn như Facebook, Youtube, Twitter,…. Có 4 loại MXH được sử dụng nhiều nhất trên thế giới, đứng đầu là Facebook, thứ hai là Twitter, tiếp theo là Googleplus và cuối cùng là Baidu. Hiện nay, số lượng người sử dụng các mạng xã hội này tăng lên đáng kể theo từng năm.
Mức độ ưa thích sử dụng các loại mạng xã hội rất khác nhau theo châu lục. MXH ưa chuộng của sinh viên thế giới là Facebook, điều này cũng khá hợp lý khi mà mạng xã hội Facebook hiện đang là mạng xã hội mạnh nhất trên thế giới. Kết luận trên cũng tương đồng với kết quả nghiên cứu của Lenhart và cộng sự (2010) là 71% thanh niên có một tài khoản Facebook. Tại Việt Nam, cũng như trên thế giới mọi người sử dụng mạng xã hội Facebook nhiều hơn các mạng xã hội khác, tiếp đến là Zalo, Twitter, Youtube….
Một khảo sát của Vietnamsurvey 2/2013 về mức độ ưa chuộng của một số trang MXH tại Việt Nam đã chỉ ra rằng Facebook là MXH được sử dụng nhiều nhất (93%), Zalo(55%), tiếp đến Twitter (45%), Youtube (27%). Trong sinh viên Việt Nam, Facebook cũng được sử dụng rất nhiều. Xu thế sử dụng MXH trong sinh viên Việt Nam hiện nay đều lựa chọn các trang MXH nước ngoài là nhiều, còn những trang MXH thuần Việt thì ít được sử dụng hơn. Tầm quan trọng của mạng xã hội trong cuộc sống, học tập, công việc Kể từ khi xuất hiện, mạng xã hội đã không ngừng mở rộng, phát triển rộng khắp và nhanh chóng thay đổi thế giới, thay đổi cách thức con người giao tiếp, tương tác với nhau.
Mọi người đang sử dụng mạng xã hội để kết nối lại với những người bạn cũ, duy trì những người bạn hiện tại và xây dựng những mối quan hệ mới. Có thể thấy mạng xã hội đã và đang tác động đến hầu hết tất cả các lĩnh vực của đời sống kinh tế, chính trị, xã hội, y tế, quốc phòng. và giáo dục cũng không nằm ngoài sự tác động đó. Trong một vài năm trở lại đây, mạng xã hội đang ngày càng trở thành một phần thiết yếu trong cuộc sống, là một công cụ giao tiếp, học tập cực kỳ hữu ích đối với bộ phận học sinh, sinh viên cũng như giảng viên.
Sự xuất hiện và phổ biến rộng khắp khiến mạng xã hội đã thay đổi hoàn toàn cách thức người học, người dạy tương tác, học hỏi và hợp tác với nhau trong môi trường giáo dục. BÁO CÁO KHÓA LUẬN TỐT NGHIỆP Trang 19 Bảng 1. Khảo sát hiện trạng với người dùng Câu hỏi Câu trả lời Bạn biết đến Trang web Bạn bè Bản tin Quảng cáo ứng dụng 23% 27% 31% 19% qua đâu Bạn đã sử dụng mạng xã hội < 1 tháng < 3 tháng < 6 tháng < 1 năm > 1 năm Whoru bao 11% 73% 12% 3% 1% lâu rồi? Giao diện người dùng Rất dễ sử Rất khó sử của mạng xã Dễ sử dụng Bình thường Khó sử dụng dụng dụng hội Whoru 5% 2% 1% 92% 0% có dễ sử dụng không? Bạn có gặp phải lỗi hoặc sự cố nào Có Không trong quá 0% 100% trình sử dụng không?