Đăng ký Đăng nhập
Trang chủ Giáo dục - Đào tạo Cao đẳng - Đại học Công nghệ thông tin Tìm hiểu flutter và xây dựng ứng dụng quản lý và bán máy chơi game hệ console...

Tài liệu Tìm hiểu flutter và xây dựng ứng dụng quản lý và bán máy chơi game hệ console

.PDF
92
1
134

Mô tả:

Báo cáo đồ án 1 ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN KHOA CÔNG NGHỆ PHẦN MỀM BÁO CÁO ĐỒ ÁN 1 ĐỀ TÀI: Tìm hiểu Flutter và xây dựng ứng dụng quản lý và bán máy chơi game hệ console Giảng viên: Trần Anh Dũng Sinh viên thực hiện: Hồ Hoàng Phương Hoàng Mạnh Tân Thành phố Hồ Chí Minh, năm 2022 19522059 19522170 Báo cáo đồ án 1 ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN KHOA CÔNG NGHỆ PHẦN MỀM BÁO CÁO ĐỒ ÁN 1 ĐỀ TÀI: Tìm hiểu Flutter và xây dựng ứng dụng quản lý và bán máy chơi game hệ console Giảng viên: Trần Anh Dũng Sinh viên thực hiện: Hồ Hoàng Phương Hoàng Mạnh Tân Thành phố Hồ Chí Minh, năm 2022 19522059 19522170 Báo cáo đồ án 1 Mục lục DANH MỤC TỪ VIẾT TẮT ............................................................................................5 LỜI CẢM ƠN ................................................................................................................... 6 ĐỀ CƯƠNG CHI TIẾT .................................................................................................... 7 NỘI DUNG ..................................................................................................................... 12 CHƯƠNG 1: GIỚI THIỆU CHUNG ......................................................................... 12 1.1. Tổng quan đề tài ...........................................................................................12 1.2. Lý do chọn đề tài ..........................................................................................12 1.3. Đối tượng sử dụng ........................................................................................13 1.4. Phạm vi nghiên cứu ......................................................................................13 1.4.1. Phạm vi môi trường .............................................................................. 13 1.4.2. Phạm vi chức năng ................................................................................13 CHƯƠNG 2: CƠ SỞ LÝ THUYẾT ......................................................................... 14 2.1. Android Studio ............................................................................................. 14 2.2. Dart ............................................................................................................... 15 2.3. Flutter ............................................................................................................16 2.4. Firebase .........................................................................................................17 2.5. GitHub .......................................................................................................... 18 2.6. NodeJs .......................................................................................................... 19 CHƯƠNG 3: THIẾT KẾ HỆ THỐNG ...............................................................20 3.1. Kiến trúc hệ thống: Mô hình MVC ..............................................................20 3.2. Chi tiết các thành phần trong hệ thống ........................................................ 21 CHƯƠNG 4: ĐẶC TẢ USE CASE ..........................................................................22 4.1. Sơ đồ Use Case .............................................................................................22 4.2. Danh sách tác nhân .......................................................................................23 4.3. Danh sách Use Case ..................................................................................... 23 4.4. Mô tả chi tiết Use Case ................................................................................ 25 CHƯƠNG 5: THIẾT KẾ CƠ SỞ DỮ LIỆU ............................................................ 48 5.1. Sơ đồ logic ................................................................................................... 48 5.2. Danh sách các quan hệ .................................................................................49 5.2.1. Bảng users: .......................................................................................... 49 5.2.2. Bảng bills: ............................................................................................49 5.2.3. Bảng products: .....................................................................................49 5.2.4. Bảng messages: ................................................................................... 50 5.2.5. Bảng contents: ..................................................................................... 50 CHƯƠNG 6: THIẾT KẾ GIAO DIỆN NGƯỜI DÙNG ..........................................51 6.1. Screen flow ...................................................................................................51 6.1.1. Người dùng: .........................................................................................51 6.1.2. Admin: .................................................................................................52 1 Tìm hiểu flutter và xây dựng ứng dụng quản lý và bán máy chơi game hệ console Báo cáo đồ án 1 6.2. Danh sách màn hình .....................................................................................53 6.3. Mô tả chi tiết ................................................................................................ 54 6.3.1. Navigation ........................................................................................... 54 a. Mô tả chung: ........................................................................................ 54 b. Các đối tượng trên màn hình: ..............................................................54 6.3.2. Trang đăng nhập ..................................................................................55 a. Mô tả chung: ........................................................................................ 55 b. Các đối tượng trên màn hình: ..............................................................55 6.3.3. Trang Quên mật khẩu ..........................................................................56 a. Mô tả chung: ........................................................................................ 56 b. Các đối tượng trên màn hình: ..............................................................56 6.3.4. Trang đăng ký ......................................................................................57 a. Mô tả chung: ........................................................................................ 57 b. Các đối tượng trên màn hình: ..............................................................58 6.3.5. Trang chính(User) ............................................................................... 59 a. Mô tả chung: ........................................................................................ 59 b. Các đối tượng trên màn hình: ..............................................................60 6.3.6. Trang Yêu thích ...................................................................................61 a. Mô tả chung: ........................................................................................ 61 b. Đối tượng trên màn hình: .................................................................... 62 6.3.7. Trang Trò chuyện ................................................................................ 63 a. Mô tả chung: ........................................................................................ 63 b. Đối tượng trên màn hình: .................................................................... 64 6.3.8. Trang Hồ sơ .........................................................................................65 a. Mô tả chung; ........................................................................................ 65 b. Đối tượng trên màn hình: .................................................................... 66 6.3.9. Trang Sản phẩm theo loại ................................................................... 67 a. Mô tả chung: ........................................................................................ 67 b. Đối tượng trên màn hình: .................................................................... 67 6.3.10. Trang Giỏ hàng ..................................................................................68 a. Mô tả chung: ........................................................................................ 68 b. Đối tượng trên màn hình: .................................................................... 69 6.3.11. Trang Tìm kiếm .................................................................................70 a. Mô tả chung: ........................................................................................ 70 b. Đối tượng trên màn hình: .................................................................... 70 6.3.12. Trang thông tin hàng ......................................................................... 71 a. Mô tả chung: ........................................................................................ 71 b. Đối tượng trên màn hình: .................................................................... 72 6.3.13. Tranhg chính(Admin) ........................................................................73 a. Mô tả chung: ........................................................................................ 73 b. Đối tượng trên màn hình: .................................................................... 74 2 Tìm hiểu flutter và xây dựng ứng dụng quản lý và bán máy chơi game hệ console Báo cáo đồ án 1 6.3.14. Trang Danh sách khách hàng ............................................................ 75 a. Mô tả chung: ........................................................................................ 75 b. Đối tượng trên màn hình: .................................................................... 76 6.3.15. Trang danh sách thanh toán .............................................................. 77 a. Mô tả chung: ........................................................................................ 77 b. Đối tượng trên màn hình: .................................................................... 78 6.3.16. Trang Doanh thu theo năm ................................................................79 a. Mô tả chung: ........................................................................................ 79 b. Đối tượng trên màn hình: .................................................................... 80 6.3.17. Trang Danh sách hàng .......................................................................81 a. Mô tả chung: ........................................................................................ 81 b. Đối tượng trên màn hình: .................................................................... 82 6.3.18. Trang Thêm hàng và Cập nhật hàng ................................................. 83 a. Mô tả chung: ........................................................................................ 83 b. Đối tượng trên màn hình: .................................................................... 84 6.3.19. Trang xóa hàng ..................................................................................85 a. Mô tả chung: ........................................................................................ 85 b. Đối tượng trên màn hình: .................................................................... 85 6.3.20. Trang Danh sách cuộc trò chuyện .....................................................86 a. Mô tả chung: ........................................................................................ 86 CHƯƠNG 7: CÀI ĐẶT VÀ KIỂM THỬ ................................................................ 87 7.1. Môi trường cài đặt và kiểm thử ............................................................... 87 7.2. Kết quả kiểm thử ......................................................................................87 CHƯƠNG 8: KẾT LUẬN ........................................................................................ 88 8.1. Tổng kết .................................................................................................. 88 8.2. Khó khăn .................................................................................................. 88 8.3. Kết quả thu được ......................................................................................89 8.4. Hạn chế của đồ án .................................................................................... 89 8.5. Hướng phát triển đồ án ............................................................................ 89 TÀI LIỆU THAM KHẢO ...............................................................................................90 3 Tìm hiểu flutter và xây dựng ứng dụng quản lý và bán máy chơi game hệ console Báo cáo đồ án 1 Danh sách hình ảnh Hình 2.1.1: Android Studio .............................................................................................14 Hình 2.2.1: Ngôn ngữ lập trình Dart ...............................................................................15 Hình 2.3.1: Flutter ........................................................................................................... 16 Hình 2.4.1: Hệ quản trị cơ sở dữ liệu Firebase ...............................................................17 Hình 2.5.1: Hệ thống quản lý mã nguồn GitHub ............................................................18 Hình 2.6.1: NodeJS ......................................................................................................... 19 Hình 3.1.1: Sơ đồ mô hình MVC ....................................................................................20 Hình 4.1.1: Sơ đồ Use Case ............................................................................................ 22 Hình 5.1.1: Sơ đồ logic của cơ sở dữ liệu .......................................................................48 Hình 6.1.1.1: Screen flow Người dùng ...........................................................................51 Hình 6.1.2.1: Screen flow Admin ................................................................................... 52 Hình 6.3.1.1: Navigation .................................................................................................54 Hình 6.3.2.1: Trang Login .............................................................................................. 55 Hình 6.3.3.1: Trang Forgot Password .............................................................................56 Hình 6.3.4.1: Trang Register Account ............................................................................57 Hình 6.3.5.1: Trang UserHome .......................................................................................59 Hình 6.3.6.1: Trang Favorite ...........................................................................................61 Hình 6.3.7.1: Trang Chat Admin .................................................................................... 64 Hình 6.3.7.2: Trang Chat ................................................................................................ 63 Hình 6.3.8.1: Trang Profile ............................................................................................. 65 Hình 6.3.9.1: Trang Product Type .................................................................................. 67 Hình 6.3.10.1: Trang Your cart .......................................................................................68 Hình 6.3.11.1: Trang Search ........................................................................................... 70 Hình 6.3.12.1: Trang View Product ................................................................................71 Hình 6.3.13.1: Trang Admin Panel .................................................................................73 Hình 6.3.14.1: Trang Customer List ............................................................................... 75 Hình 6.3.15.1: Trang Revenue Detail ............................................................................. 77 Hình 6.3.16.1: Trang Yearly Revenue Chart ..................................................................79 Hình 6.3.17.1: Trang Product List .................................................................................. 81 Hình 6.3.18.1: Trang Add New Product và Update Product ..........................................83 Hình 6.3.19.1: Trang Remove Product ........................................................................... 85 Hình 6.3.20: Trang Messages ......................................................................................... 86 4 Tìm hiểu flutter và xây dựng ứng dụng quản lý và bán máy chơi game hệ console Báo cáo đồ án 1 DANH MỤC TỪ VIẾT TẮT # Từ viết tắt Từ đầy đủ Ý nghĩa 1 CSDL Cơ sở dữ liệu Cơ sở dữ liệu cho ứng dụng 2 API Application Programming Interface Giao diện lập trình ứng dụng 3 MVC Model-View-Controller Mô hình lập trình 5 Tìm hiểu flutter và xây dựng ứng dụng quản lý và bán máy chơi game hệ console Báo cáo đồ án 1 LỜI CẢM ƠN Sau quá trình học tập và rèn luyện tại khoa Công nghệ phần mềm trường Đại học Công nghệ Thông tin – ĐHQG TP.HCM chúng em đã được trang bị các kiến thức cơ bản, các kỹ năng thực tế để có thể lần đầu thực hiện Đồ án 1 của mình. Để hoàn thành Đồ án này, chúng em xin gửi lời cảm ơn chân thành đến: Ban Giám hiệu trường Đại học Công nghệ Thông tin – ĐHQG TP.HCM vì đã tạo điều kiện về cơ sở vật chất với hệ thống thư viện hiện đại, đa dạng các loại sách, tài liệu thuận lợi cho việc tìm kiếm, nghiên cứu thông tin. Chúng em xin gửi lời cảm ơn chân thành đến thầy Trần Anh Dũng đã tận tình giúp đỡ, định hướng cách tư duy và cách làm việc khoa học. Đó là những góp ý hết sức quý báu không chỉ trong quá trình thực hiện luận văn này mà còn là hành trang tiếp bước cho chúng em trong quá trình học tập và lập nghiệp sau này. Và cuối cùng, chúng em xin gửi lời cảm ơn đến gia đình, tất cả thầy cô trong khoa, bạn bè, tập thể lớp KTPM2019 là những người luôn sẵn sàng sẻ chia và giúp đỡ trong học tập và cuộc sống. Mong rằng, chúng ta sẽ mãi mãi gắn bó với nhau. Trong quá trình làm Đồ án này chúng em không tránh khỏi được những sai sót, chúng em kính mong nhận được sự chỉ dẫn và góp ý của quý thầy cô để hoàn thiện và phát triển đồ án hơn trong môn học Đồ án 2 cũng như trong Khóa luận tốt nghiệp trong tương lai. Chúng em xin chân thành cảm ơn. Xin chúc những điều tốt đẹp nhất sẽ luôn đồng hành cùng mọi người. Thành phố Hồ Chí Minh, 28 tháng 5 năm 2022 Sinh viên HOÀNG MẠNH TÂN HỒ HOÀNG PHƯƠNG 6 Tìm hiểu flutter và xây dựng ứng dụng quản lý và bán máy chơi game hệ console Báo cáo đồ án 1 ĐẠI HỌC QUỐC GIA TP. HỒ CHÍ MINH TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM Độc Lập - Tự Do - Hạnh Phúc HCM, ngày 28 tháng 5 năm 2022 ĐỀ CƯƠNG CHI TIẾT TÊN ĐỀ TÀI: Tìm hiểu Flutter và xây dựng ứng dụng quản lý và bán máy chơi game hệ console Cán bộ hướng dẫn: ThS. Trần Anh Dũng Thời gian thực hiện: Từ ngày 07/03/2022 đến ngày 10/6/2022 Sinh viên thực hiện: Hồ Hoàng Phương – 19522059 Hoàng Mạnh Tân – 19522170 Nội dung đề tài 1. Lý do chọn đề tài: Hiện nay, trên thế giới đang bùng phát dịch Covid-19, nhiều người phải cách ly tại nhà khá lâu khiến nhu cầu giải trí của họ ngày một càng tăng nhanh. Từ đó các sản phẩm giải trí, đặc biệt là tại nhà ngày càng gia tăng theo thị hiếu. Trong các loại sản phẩm giải trí, có thể thấy phổ biến và được nhiều người chuộng nhất là việc chơi game, đặc biệt là chơi game trên hệ máy console-đây là hệ máy có thể chơi theo một nhóm hay gia đình và không cần đòi hỏi nhiều phụ kiện đi kèm. Do đó, nhu cầu lựa chọn và được tư vấn các loại máy chơi game phù hợp cho bản thân là một vấn đề đang được nhiều người mon muốn và quan tâm, vì thế họ có thể sắm cho mình một máy chơi game theo ý muốn một cách thuận tiện và nhanh nhẹn mà không cần đến tận cửa tiệm. Để đáp ứng những nhu cầu đó, nhóm em quyết định chọn đề tài này, phát triển một ứng dụng cung cấp nhanh chóng thông tin về cửa hàng cũng như các loại sản phẩm của cửa hàng, thực hiện mua và liên hệ giữa người dùng và chủ cửa hàng. Ứng dụng của nhóm sẽ tập trung bán 3 thứ chính, bao gồm: - Máy chơi game console. - Đĩa game - Phụ kiện đi kèm(nếu có). Ứng dụng cung cấp những tính năng tiện ích giúp khách hàng có thể tiếp cận đến những thông tin mới về cửa hàng, về các sản phẩm mà cửa hàng cung cấp thông qua các danh mục sản phẩm như Popular, New arrival. Bên cạnh đó, chủ cửa hàng có thể vào hệ thống để quan lý việc mua, bán, doanh thu, thông tin của admin và cập nhật thông tin mới về sản phẩm. 7 Tìm hiểu flutter và xây dựng ứng dụng quản lý và bán máy chơi game hệ console Báo cáo đồ án 1 2. Mục tiêu: bao gồm 2 mục tiêu chính: Xây dựng User-side: + Có thể đăng nhập hay đăng ký(qua bước OTP) để sử dụng dịch vụ của cửa hàng. + Có thể xem sản phẩm, tìm kiếm sản phẩm theo keyword, thêm vào giỏ hàng, thêm vào yêu thích, chat với chủ cửa hàng, chỉnh sửa thông tin cá nhân. + Có thể xem thông tin giỏ hàng, xóa hàng đã thêm vào giỏ, tiến hành thanh toán và xuất bill. Xây dựng Admin-side: + Cho phép chủ cửa hàng thêm, xóa, sửa thông tin hàng và xem thông tin hàng. + Chat với người mua hàng. + Xem doanh thu của cửa hàng. + Quản lý thông tin cá nhân. 3.Phạm vi: Phạm vi môi trường: Ứng dụng di động Phạm vi chức năng:  Đối với User: + Có khả năng xem hàng, mua hàng hay thêm hoặc xóa hàng trong giỏ hàng cũng như danh mục yêu thích. + Xem thông tin giỏ hàng và tiến hành thanh toán, xuất bill. + Chat với người bán để lấy thêm thông tin cũng như hỏi đáp về sản phẩm. + Quản lý và chỉnh sửa thông tin cá nhân.  Đối với Admin: + Cung cấp thông tin mới nhất về cửa hàng, về sản phẩm. + Cung cấp chức năng quản lí như thêm xóa, sửa, thay đổi những vấn đề liên quan tới sản phẩm. + Quản lý doanh thu, thông tin cá nhân và khách hàng. + Trao đổi với khác hàng qua mục Chat. 4. Đối tượng sử dụng:  Tất cả mọi người muốn lựa chọn và mua bán các loại máy game, phụ kiện đi kèm và game cũng như bán lại đĩa game cũ.  Chủ cửa hàng muốn quản lý thông tin bài đăng (về cửa hàng, về sản phẩm,..) đến mọi người truy cập vào ứng dụng. 8 Tìm hiểu flutter và xây dựng ứng dụng quản lý và bán máy chơi game hệ console Báo cáo đồ án 1 5. Phương pháp thực hiện: Phương pháp làm việc:  Làm việc nhóm 2 thành viên thông qua cả 2 phương thức online lẫn offline dưới sự hướng dẫn của giảng viên hướng dẫn. Phương pháp nghiên cứu:  Phân tích nhu cầu sử dụng của đối tượng người dùng.  Nghiên cứu tài liệu các công nghệ liên quan. Phương pháp công nghệ:  Xây dựng giao diện mobile app để tương tác với người dùng.  Quản lý source code thông qua Github.  Sử dụng Trello, Google doc, Drive… để quản lý tiến trình và tài liệu. 6.Nền tảng công nghệ:  Dart  Android Studio  Flutter  NodeJS  Firebase 7.Kết quả mong đợi:  Cả User-side và Admin-side thực hiện được hết các chức năng của mình.  Ứng dụng di động hoạt động ổn định, có thể xử lý thông tin nhanh chóng. 8.Hướng phát triển của đề tài:  Nâng cấp tính năng quản lý việc ship hàng tới khách hàng.  Thêm chatbot để tối ưu hóa chức năng hỗ trợ người dùng. 9.Kế hoạch làm việc: Thời gian thực hiện từ ngày 18/03/2022 đến ngày kết thúc môn Đồ án 1. Nhóm chia thành 2 giai đoạn cụ thể: Giai đoạn 1: Hoàn thiện giao diện người dùng, database và tìm hiểu công nghệ. Gồm 3 sprint với thời gian mỗi sprint kéo dài khoảng 2 tuần: Thời gian: 18/03/2022 -28/04/2022 Sprint 1: Tìm hiểu công nghệ Flutter. 9 Tìm hiểu flutter và xây dựng ứng dụng quản lý và bán máy chơi game hệ console Báo cáo đồ án 1 Sprint 2: Phân tích yêu cầu và chức năng, chuẩn bị tài liệu, bản vẽ và các diagram liên quan. Sprint 3: Tìm hiểu công nghệ Firebase, xây dựng CSDL, xây dựng UI và các chức năng cơ bản. Sprint Thời gian Sprint 1 18/03/2022-01/04/2022 Công việc dự kiến _ Tìm hiểu công nghệ. _ Tìm hiểu yêu cầu nghiệp vụ của đề tài. _ Phân tích yêu cầu và chức năng của ứng dụng. Sprint 2 01/04/2022-14/04/2022 _ Viết tài liệu mô tả. _ Xây dựng bản vẽ. _ Xây dựng CSDL. Sprint 3 14/04/2022-28/04/2022 _ Xây dựng giao diện ứng dụng. _ Xây dựng các tính năng cơ bản của ứng dụng. Giai đoạn 2: Hoàn thiện các tính năng năng cơ bản và nâng cao của ứng dụng, kiểm thử và viết báo cáo. Gồm 4 sprint với thời gian mỗi sprint kéo dài khoảng 2 tuần: Thời gian: 29/04/2021 - báo cáo cuối kỳ Sprint 4: Hoàn thiện backend ứng với frontend đã thiết kê. Sprint 5: Hoàn thiện và mở rộng frontend(nếu có thể). Sprint 6: Hoàn thiện và mở rộng back-end(nếu có thể). Sprint 7: Triển khai kiểm thử và viết báo cáo. Sprint Thời gian Sprint 4 29/04/2022-20/05/2022 Sprint 5 20/05/2022-28/05/2022 10 Công việc dự kiến _ Hoàn thiện giao diện ứng dụng. _ Tiếp tục hoàn thiện các tính năng. _ Tiếp tục hoàn thiện các tính Tìm hiểu flutter và xây dựng ứng dụng quản lý và bán máy chơi game hệ console Báo cáo đồ án 1 năng. _ Hoàn thiện ứng dụng. Sprint 6 28/05/2022-08/05/2022 _ Tiến hành kiểm thử. _ Kiểm tra lại ứng dụng. Sprint 7 08/05/2022-10/05/2022 _ Hoàn chỉnh bài báo cáo. 2. Phân công công việc: Công việc Công việc chung Mô tả công việc _ Tìm hiểu công nghệ. _ Phân tích yêu cầu. _ Hỗ trợ lẫn nhau back-end/front-end. _ Chuẩn bị tài liệu và viết báo cáo. _ Lập kế hoạch. _ Xây dựng bản vẽ. Công việc cá nhân Hoàng Mạnh Tân Hồ Hoàng Phương _ Lập trình back-end _ Xây dựng, liên kết CSDL _ Hỗ trợ xây dựng CSDL, _ Lập trình front-end logic. _ Kiểm thử Tp.Hồ Chí Minh, ngày 10 tháng 5 năm 2021 11 Tìm hiểu flutter và xây dựng ứng dụng quản lý và bán máy chơi game hệ console Báo cáo đồ án 1 NỘI DUNG CHƯƠNG 1: GIỚI THIỆU CHUNG 1.1. Tổng quan đề tài - Tên ứng dụng: Game Station - Chủ đề chính: Quản lý và bán máy chơi game hệ console - Nền tảng phát triển: Android - Mô hình phát triển: MVC 1.2. Lý do chọn đề tài Hiện nay, trên thế giới đang bùng phát dịch Covid-19, nhiều người phải cách ly tại nhà khá lâu khiến nhu cầu giải trí của họ ngày một càng tăng nhanh. Từ đó các sản phẩm giải trí, đặc biệt là tại nhà ngày càng gia tăng theo thị hiếu. Trong các loại sản phẩm giải trí, có thể thấy phổ biến và được nhiều người chuộng nhất là việc chơi game, đặc biệt là chơi game trên hệ máy console-đây là hệ máy có thể chơi theo một nhóm hay gia đình và không cần đòi hỏi nhiều phụ kiện đi kèm. Do đó, nhu cầu lựa chọn và được tư vấn các loại máy chơi game phù hợp cho bản thân là một vấn đề đang được nhiều người mon muốn và quan tâm, vì thế họ có thể sắm cho mình một máy chơi game theo ý muốn một cách thuận tiện và nhanh nhẹn mà không cần đến tận cửa tiệm. Để đáp ứng những nhu cầu đó, nhóm em quyết định chọn đề tài này, phát triển một ứng dụng cung cấp nhanh chóng thông tin về cửa hàng cũng như các loại sản phẩm của cửa hàng và tích hợp chatbot hỗ trợ tự động tư vấn, hướng dẫn mua sắm đến với người dùng truy cập vào ứng dụng. Ứng dụng của nhóm sẽ tập trung việc bán 3 thứ chính, bao gồm: - Máy chơi game console. - Đĩa game - Phụ kiện đi kèm(nếu có). Ứng dụng cung cấp những tính năng tiện ích giúp khách hàng có thể tiếp cận đến những thông tin mới về cửa hàng, về các sản phẩm mà cửa hàng cung cấp thông qua các danh mục sản phẩm như Popular hay New arrival, xem thông tin hàng và trao đổi với chủ cửa hàng. Bên cạnh đó, chủ cửa hàng có thể vào hệ thống để quan lý việc mua, bán và cập nhật thông tin mới về sản phẩm và trao đổi với khách hàng. 12 Tìm hiểu flutter và xây dựng ứng dụng quản lý và bán máy chơi game hệ console Báo cáo đồ án 1 1.3. Đối tượng sử dụng  Tất cả mọi người muốn lựa chọn và mua bán các loại máy game, phụ kiện đi kèm và game cũng như bán lại đĩa game cũ.  Chủ cửa hàng muốn quản lý thông tin bài đăng (về cửa hàng, về sản phẩm,…) đến mọi người truy cập vào ứng dụng. 1.4. Phạm vi nghiên cứu 1.4.1. Phạm vi môi trường: Ứng dụng di động 1.4.2. Phạm vi chức năng: Xây dựng User-side: + Có thể đăng nhập hay đăng ký(qua bước OTP) để sử dụng dịch vụ của cửa hàng. + Có thể xem sản phẩm, tìm kiếm sản phẩm theo keyword, thêm vào giỏ hàng, thêm vào yêu thích, chat với chủ cửa hàng, chỉnh sửa thông tin cá nhân. + Có thể xem thông tin giỏ hàng, xóa hàng đã thêm vào giỏ, tiến hành thanh toán và xuất bill. Xây dựng Admin-side: + Cho phép chủ cửa hàng thêm, xóa, sửa thông tin hàng và xem thông tin hàng. + Chat với người mua hàng. + Xem doanh thu của cửa hàng. + Quản lý thông tin cá nhân. 13 Tìm hiểu flutter và xây dựng ứng dụng quản lý và bán máy chơi game hệ console Báo cáo đồ án 1 CHƯƠNG 2: CƠ SỞ LÝ THUYẾT 2.1. Android Studio Hình 2.1.1: Android Studio Android Studio là một phầm mềm bao gồm các bộ công cụ khác nhau dùng để phát triển ứng dụng chạy trên thiết bị sử dụng hệ điều hành Android như các loại điện thoại smartphone, các tablet... Android Studio được đóng gói với một bộ code editor, debugger, các công cụ performance tool và một hệ thống build/deploy (trong đó có trình giả lập simulator để giả lập môi trường của thiết bị điện thoại hoặc tablet trên máy tính) cho phép các lập trình viên có thể nhanh chóng phát triển các ứng dụng từ đơn giản tới phức tạp. 14 Tìm hiểu flutter và xây dựng ứng dụng quản lý và bán máy chơi game hệ console Báo cáo đồ án 1 2.2. Dart Hình 2.2.1: Ngôn ngữ lập trình Dart Dart là ngôn ngữ lập trình cho Flutter- bộ công cụ giao diện người dùng của Google để xây dựng các ứng dụng Mobile, Web và Desktop app đẹp, được biên dịch nguyên bản từ một cơ sở mã code duy nhất. Về đặc điểm của ngôn ngữ lập trình Dart, Dart gần giống như ngôn ngữ Java từ 70%-80%. Cú pháp Dart rõ ràng và súc tích, công cụ của nó đơn giản nhưng mạnh mẽ. Type-safe giúp xác định sớm các lỗi tinh tế. Dart có các thư viện cốt lõi và một hệ sinh thái gồm hàng ngàn package. Dart cung cấp tối ưu hóa việc biên dịch trước thời hạn để có được dự đoán hiệu suất cao và khởi động nhanh trên các thiết bị di động và web. Dart biên dịch thành mã ARM và x86, để các ứng dụng di động của Dart có thể chạy tự nhiên trên iOS, Android và hơn thế nữa. Đối với các ứng dụng web, chuyển mã từ Dart sang JavaScript. Dart quen thuộc với nhiều nhà phát triển hiện có, nhờ vào cú pháp và định hướng đối tượng không gây ngạc nhiên của nó. Nếu đã biết C ++, C # hoặc Java, có thể làm việc hiệu quả với Dart. Dart rất phù hợp với lập trình Reactive, với sự hỗ trợ để quản lý các đối tượng tồn tại trong thời gian ngắn, chẳng hạn như các widget UI, thông qua phân bổ đối tượng nhanh và GC. Dart hỗ trợ lập trình không đồng bộ thông qua các tính năng ngôn ngữ và API sử dụng các đối tượng Future và Stream. 15 Tìm hiểu flutter và xây dựng ứng dụng quản lý và bán máy chơi game hệ console Báo cáo đồ án 1 2.3. Flutter Hình 2.3.1: Flutter Flutter được Google giới thiệu là một người mới trong thế giới ứng dụng di động. Là một SDK mới của Google dành cho các thiết bị di động giúp developers và designers xây dựng nhanh chóng ứng dụng dành cho các thiết bị di động (Android, iOS). Flutter là dự án mã nguồn mở đang trong giai đoạn thử nghiệm. Flutter bao gồm Reactive framework và công nghệ hiển thị 2D (2D rendering engine)và các công cụ phát trển(development tool). Các thành phần này làm việc cùng nhau giúp ta thiết kế, xây dựng, test, debug ứng dụng. Không có gì ngạc nhiên khi Flutter giúp các nhà phát triển tạo ra các ứng dụng native đẹp mắt và giúp họ phát triển các ứng dụng đa nền tảng một cách dễ dàng. 16 Tìm hiểu flutter và xây dựng ứng dụng quản lý và bán máy chơi game hệ console Báo cáo đồ án 1 2.4. Firebase Hình 2.4.1: Hệ quản trị cơ sở dữ liệu Firebase Firebase là dịch vụ cơ sở dữ liệu hoạt động trên nền tảng đám mây – cloud. Kèm theo đó là hệ thống máy chủ cực kỳ mạnh mẽ của Google. Chức năng chính là giúp người dùng lập trình ứng dụng bằng cách đơn giản hóa các thao tác với cơ sở dữ liệu. Với firebase, ta có thể tạo ra những ứng dụng real-time như app chat, cùng nhiều tính năng như xác thực người dùng, Cloud Messaging,... Có thể dùng firebase giống như phần backend của app. Các dịch vụ của firebase hoàn toàn miễn phí, tuy nhiên cần phải trả thêm tiền nếu muốn nâng cấp lên. Cần cân nhắc điều này nếu muốn xây dựng một ứng dụng lớn sử dụng phần backend là firebase, vì cái giá khi muốn nâng cấp còn khá đắt đỏ so với việc xây dựng backend truyền thống. 17 Tìm hiểu flutter và xây dựng ứng dụng quản lý và bán máy chơi game hệ console Báo cáo đồ án 1 2.5. GitHub Hình 2.5.1: Hệ thống quản lý mã nguồn GitHub GitHub là một hệ thống quản lý dự án và phiên bản code, hoạt động giống như một mạng xã hội cho lập trình viên. Các lập trình viên có thể clone lại mã nguồn từ một repository và Github chính là một dịch vụ máy chủ repository công cộng, mỗi người có thể tạo tài khoản trên đó để tạo ra các kho chứa của riêng mình để có thể làm việc. Github có đầy đủ những tính năng của Git, ngoài ra nó còn bổ sung những tính năng về social để các developer tương tác với nhau. Github cung cấp các tính năng social networking như feeds, followers, và network graph để các developer học hỏi kinh nghiệm của nhau thông qua lịch sử commit. 18 Tìm hiểu flutter và xây dựng ứng dụng quản lý và bán máy chơi game hệ console
- Xem thêm -

Tài liệu liên quan