Chương 1: Tổng quan 2 do an Báo cáo đồ án tốt nghiệp b) Vận dụng tốt công nghệ ASP.NET Core ASP.NET Core là công nghệ chính được áp dụng trong việc xây dựng hệ thống. Công nghệ ASP.NET Core đã được tìm hiểu cơ bản trong lần thực hiện tiểu luận chuyên ngành và cũng đã được áp dụng để xây dựng phần sườn của hệ thống hiện tại. Trong lần thực hiện khóa luận này, thì nhóm thực hiện báo cáo sẽ tìm hiểu chuyên sâu hơn, tìm hiểu thêm công nghệ ví dụ ASP.NET Core SignalR để xây dựng chức năng Chat trực tuyến. Đã có những khoảng thời gian tìm hiểu nhất định thì việc vận dụng tốt công nghệ cũng là một yêu cầu, có thể không yêu cầu quá tốt nhưng cũng phải tương đối thành thạo khi sử dụng công nghệ.
c) Củng cố lại các chức năng đã thực hiện Củng cố, sửa lỗi các chức năng thêm sản phẩm vào giỏ hàng (quản lý kích thước, màu và số lượng), quản lý giỏ hàng (số lượng sản phẩm), quản lý hình ảnh sản phẩm, quản lý số lượng sản phẩm, quản lý đơn hàng, cấp quyền cho từng vai trò người dùng ở phần quản trị đã được thực hiện trong lần thực hiện tiểu luận chuyên ngành. d) Cải thiện giao diện Chỉnh sửa giao diện ở một số chỗ để tăng tính đẹp mắt, điều chỉnh responesive một vài chỗ bị lỗi khi chạy hệ thống trên các ứng dụng như di dộng. e) Phát triển thêm các tính năng cơ bản cần thiết khác cho hệ thống website Xây dựng thêm các tính năng cơ bản như đặt lại mật khẩu (khi quên mật khẩu), quản lý thông tin tài khoản, đổi mật khẩu, xem lịch sử đơn hàng, hủy đơn hàng, thêm sản phẩm yêu thích, quản lý danh sách sản phẩm yêu, xem danh sách sản phẩm đã xem, đánh giá sản phẩm, đánh giá về website cho người dùng. f) Xây dựng tính năng chat trực tuyến (real-time) Chức năng chat trực tuyến giữa khách hàng và quản trị viên của hệ thống là khá quan trọng.
Người dùng có thể gọi điện trực tiếp đến cửa hàng để hỏi đáp các vấn đề thắc mắc về sản phẩm chẳng hạn. Nhưng không phải khách hàng nào cũng đều muốn giải đáp thắc mắc bằng cách gọi điện trực tiếp. Trừ cuộc gọi miễn phí, cuộc gọi có tính cước cũng là một rào cản. Ngại giao tiếp cũng là vấn đề, vì khi giao tiếp trực tiếp và giao tiếp trực tuyến thông qua chức năng chat cũng sẽ có tâm lý khác nhau.
Gọi điện trực tiếp thì nhanh, gọn nhưng có thể quên sót nội dung, giao tiếp trực tuyến tâm lý sẽ thoải mái hơn và nhất thiết phải trả lời ngay lập tức. Việc xây dựng chức năng chat giúp người dùng thoải mái hơn trong việc giải đáp các thắc mắc về thông tin các mặt hàng đang quan tâm. Chương 1: Tổng quan 3 do an Báo cáo đồ án tốt nghiệp Chức năng chat sẽ sử dụng công nghệ ASP.NET Core SignalR để xây dựng, công nghệ sẽ giúp về mặt real-time cho chức năng, nội dung của cuộc hội thoại sẽ được hiển thị ngay lập tức. g) Tích hợp phương thức thanh toán trực tuyến PayPal Thanh toán trực tuyến là nền tảng của hệ thống thương mại điện tử.
Phát triển phương thức thanh toán trực tuyến sẽ hoàn thiện hóa thương mại điện tử theo đúng nghĩa là giao dịch hoàn toàn trên Internet. Nhanh chóng, tiện lợi và tiết kiệm thời gian. Do đó, việc tích hợp phương thức thanh toán trực tuyến PayPal cho hệ thống là thực sự cần thiết. Nhóm thực hiện báo cáo sẽ sử dụng tài khoản PayPal Sandbox khi thanh toán bằng phương thức PayPal.
h) Tích hợp hệ thống gợi ý (Recommendation Systems) cho hệ thống trang web Tích hợp hệ thống gợi ý cho hệ thống trang web sẽ giúp cho hệ thống hiện đại hơn, mang lại lợi ích cho khách hàng. Sử dụng các dự liệu thu thập từ các người dùng để từ đó đưa những gợi ý sản phẩm phù hợp với sở thích của người dùng sẽ nâng cao chất lượng dịch vụ của hệ thống. Nhóm thực hiện báo cáo sẽ xây dựng hệ thống gợi ý dựa trên phương pháp lọc cộng tác (Collaborative filtering recommender systems), cụ thể hơn là hướng tiếp tiếp cận user-based, gợi ý dựa trên các người dùng có cùng sở thích. Xây dựng hệ thống gợi ý không phải là nội dung chính của toàn bộ đề tài, do đó nhóm thực hiện báo cáo sẽ sử dụng thư viện sẵn có để xây dựng hệ thống gợi ý.
i) Thống kê các số liệu liên quan hệ thống trang web (Dashboard) Thống kê sẽ giúp chúng ta nhìn thấy được sự phát triển của hệ thống thông qua các con số. Nhóm thực hiện báo cáo sẽ thống kê các số liệu như tổng doanh thu, tổng lợi nhuận, tổng chi phí, tổng số sản phẩm đã bán, tổng số sản phẩm đã được đánh giá, tổng số người dùng có trong hệ thống và số người đã ghé thăm trang web. Ngoài ra, còn có đồ thị hiển thị lợi nhuận qua từng ngày của 7 ngày gần nhất. j) Triển khai ứng dụng trong môi trường thực tế Triển khai ứng dụng trong môi trường thực tế tức là ứng dụng của chúng ta đã được đưa ra thế giới bên ngoài, bắt đầu tiếp cận với nhiều người dùng thực tế.
Đối với việc triển khai trong môi trường thực tế các ứng dụng được làm từ trường học sẽ có rất nhiều Chương 1: Tổng quan 4 do an Báo cáo đồ án tốt nghiệp vấn đề cần giải quyết, đặc biệt là vấn đề bảo mật, khả năng lưu trữ, sức chịu tải. Với khả năng, trình độ thì không nhiều sinh viên có thể xử lý tốt các vấn đề này được. Nhóm thực hiện báo cáo sẽ cố gắng triển khai ứng dụng trong môi trường thực tế mặc dù có thể chất lượng hoạt động của các chức năng sẽ không bằng khi hệ thống chạy dưới local host. k) Cài đặt chứng chỉ SSL (Secure Sockets Layer) Khi chúng ta đăng ký tên miền để sử dụng các dịch vụ website thì luôn có những lổ hổng bảo mật cho hacker tấn công, SSL sẽ bảo vệ website và khách hàng.
SSL sẽ giúp bảo mật dữ liệu, nâng cao hình ảnh, thương hiệu uy tín của hệ thống. Nếu website không được xác thực và bảo mật sẽ luôn tiềm ẩn nguy cơ bị xâm nhập dữ liệu, dẫn đến khách hàng sẽ không tin tưởng sử dụng dịch vụ hệ thống. Chương 1: Tổng quan 5 do an Báo cáo đồ án tốt nghiệp Chương 2: CƠ SỞ LÝ THUYẾT 2. Công nghệ ASP.
Công nghệ ASP.NET Core là gì? ASP.NET Core là một framework mới của Microsoft. Mã nguồn mở và được tối ưu hóa cloud để phát triển các ứng dụng web chạy đa nền tảng Windows, Mac và Linux. Hàng triệu nhà phát triển sử dụng hoặc đã sử dụng ASP.x để tạo các ứng dụng web.NET Core là một thiết kế lại từ ASP.x, bao gồm các thay đổi kiến trúc để cho ra một module gọn gàng hơn. Ứ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ó 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. 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. Đồng thời nó đã trở thành một mã nguồn mở. Đây là một thay đổi rất lớn và quan trọng nhất của ASP.
Điều mà trước đây khó có một lập trình viên nào có thể nghĩ đến. Có lẽ đó cũng là một xu thế mà các ngôn ngữ lập trình hiện nay đang hướng tới. Các phiên bản đã và sắp phát hành 1. So sánh sự khác nhau giữa công nghệ ASP.NET và ASP.NET Core Bảng 2.
1: So sánh sự khác nhau giữa ASP.NET Core và ASP.NET CORE ASP.NET Chạy trên đa nền tảng Windows, macOS, Chỉ chạy trên nền tảng Windows Linux Hoàn toàn thiết kế mới Nền tảng đã có từ lâu Phát triển với các công cụ Visual Studio, Phát triển với công cụ Visual Studio sử Visual Studio phiên bản macOS, Visual dụng C#, VB hoặc F# Studio Code sử dụng C# hoặc F# Hiệu năng tốt hơn ASP.x Hiệu năng tốt Chạy trên .NET Core và .NET Framework Chạy trên .NET Framework Nhỏ, nhẹ và module hóa System.dll cồng kềnh Sử dụng .NET Core runtime Sử dụng. Ưu, nhược điểm của công nghệ ASP.NET Core Ưu điểm Những nền tảng cải tiến được từ ASP.NET Core: Chương 2: Cơ sở lý thuyết 6 do an Báo cáo đồ án tốt nghiệp + Hợp nhất ASP.NET MVC và ASP. + Có thể host trên IIS hoặc tự host. + Sử dụng trên đa nền tảng Windows, macOS và Linux.NET Core hoặc.
+ Dễ dàng tích hợp các framework frontend như Angular,… + Có khả năng lưu trữ trên Kestrel, IIS, Nginx, Apache, Docker. + Hỗ trợ quản lý phiên bản + Mã nguồn mở. Nhược điểm + Số lượng thư viện còn hạn chế. Công nghệ ASP.NET Core SignalR ASP.NET Core SignalR là một thư viện mã nguồn mở giúp đơn giản hoá việc thêm các chức năng web real-time cho ứng dụng.
Đó là khả năng Server đẩy những nội dung tới Client đã được kết nối một cách tức thì. Nó khác với HTTP thông thường: Server đợi những yêu cầu từ Client và trả về nội dung tương ứng. SignalR có thể sử dụng trong bất kỳ chức năng web real-time nào. Trong đó ứng dụng Chat là một ví dụ điển hình, như gửi tin nhắn cho tất cả mọi người được kết nối cùng một lúc (phòng trò chuyện), gửi tin nhắn từng người cụ thể.
Nội dung của cuộc hội thoại khi trò chuyện sẽ được cập nhật ngay lập tức, giống như các tính năng trò chuyện của facebook, skype, zalo,… mà chúng ta thường hay sử dụng. Ngoài ra, ứng dụng SignalR trong việc quản lý cũng rất quan trọng. Ví dụ khi xây dựng các module quản lý thì chúng ta thường sẽ hiển thị dữ liệu trên các bảng. Và khi bảng dữ liệu có những cập nhật, thay đổi mới thì dữ liệu trong bảng sẽ không thay đổi ngay lập để chúng ta thấy mà chúng ta phải làm mới lại trang để thấy được sự thay đổi dữ liệu.
Do đó áp dụng SignalR để xây dựng các bảng thời gian thực (table real-time) là một việc làm cần thiết. Trong các ứng dụng trò chơi thì chúng ta cũng dễ dàng nhìn thấy SignalR trong đó. Khi chúng ta chơi game thì chắc chắn là nó luôn có tính liên tục, ví dụ như game “Đột kích” thì chẳng có thể mà chúng ta bắn 1 phát đạn 10, 20 giây sau thì viên đạn mới được bắn đi. Các nền tảng ASP.NET Core SignalR hỗ trợ ASP.NET Core SignalR sẽ hỗ trợ bất kỳ nền tảng nào mà ASP.NET Core hỗ trợ.
Chương 2: Cơ sở lý thuyết 7 do an Báo cáo đồ án tốt nghiệp JavaScript client Bảng 2.