Đăng ký Đăng nhập
Trang chủ Ứng dụng quản lý các thông báo nsocial ...

Tài liệu Ứng dụng quản lý các thông báo nsocial

.PDF
99
1
90

Mô tả:

TRƯỜNG ĐẠI HỌC BÀ RỊA – VŨNG TÀU KHOA CÔNG NGHỆ KỸ THUẬT NÔNG NGHIỆP CÔNG NGHỆ CAO ---------- BÁO CÁO ĐỒ ÁN TỐT NGHIỆP ĐỀ TÀI: ỨNG DỤNG QUẢN LÝ CÁC THÔNG BÁO NSOCIAL Trình độ đào tạo : Đại học Ngành : Công nghệ thông tin Chuyên ngành : Lập trình ứng dụng điện thoại di động và game Khóa học : 2018-2021 Lớp : DH18LT Sinh viên thực hiện : Lê Hoàng Nêu Mã số sinh viên : 18033883 GVHD : TS. Phan Ngọc Hoàng BÀ RỊA - VŨNG TÀU, NĂM 2021 GVHD: PHAN NGỌC HOÀNG - SVTH: LÊ HOÀNG NÊU 1 LỜI CẢM ƠN Để hoàn thành đề tài báo cáo đồ án này trước hết, em xin gửi đến quý thầy, cô giáo trong khoa Công nghệ kỹ thuật – Nông nghiệp công nghệ cao trường Đại học Bà Rịa – Vũng Tàu lời cảm ơn chân thành. Đặc biệt, em xin gửi đến thầy Phan Ngọc Hoàng, người đã tận tình hướng dẫn, giúp đỡ em hoàn thành đề tài đồ án tốt nghiệp lời cảm ơn sâu sắc nhất. Em xin chân thành cảm ơn Ban Lãnh Đạo, các phòng ban của công ty cổ phần công nghệ W360S, đã tạo điều kiện thuận lợi cho em được tìm hiểu thực tiễn cũng như những nền tảng, kiến thức cần thiết giúp em hoàn thành sản phẩm của mình trong suốt quá trình thực tập tại công ty. Đồng thời xin chân thành cảm ơn Ban lãnh đạo trường Đại học Bà Rịa – Vũng Tàu đã cho môi trường học tập lành mạnh và năng động. Kính chúc Trường Đại học Bà Rịa – Vũng Tàu tiếp túc gặt hái nhiều thành công trên con đường giáo dục thế hệ trẻ. Và cuối cùng là con xin cảm ơn ba mẹ đã hi sinh, chăm sóc, dành tất cả tâm huyết, sức lực để cho con có một môi trường học tập và thực tập tốt. Vì những hi sinh công sức của ba mẹ nên con sẽ cố gắng hết sức trong con đường tương lai sau này của mình. Vì kiến thức bản thân còn hạn chế và trình độ lý luận cũng như kinh nghiệm thực tiễn còn hạn chế nên bài báo cáo không thể tránh khỏi những thiếu sót, em rất mong nhận được ý kiến đóng góp thầy, cô để em học thêm được nhiều kinh nghiệm và sẽ hoàn thiện bản thân đáp ứng với nhu cầu công việc thực tế trong tương lai. Em xin chân thành cảm ơn! GVHD: PHAN NGỌC HOÀNG - SVTH: LÊ HOÀNG NÊU 2 LỜI CAM ĐOAN Tôi xin cam đoan kết quả đạt được trong đồ án là sản phẩm của riêng cá nhân, không sao chép lại của người khác. Trong toàn bộ nội dung của đồ án, những điều được trình bày hoặc là của cá nhân hoặc là được tổng hợp từ nhiều nguồn tài liệu. Tất cả các tài liệu tham khảo đều có xuất xứ rõ ràng và được trích dẫn hợp pháp. Tôi xin hoàn toàn chịu trách nhiệm và chịu mọi hình thức kỷ luật theo quy định cho lời cam đoan của mình. Vũng Tàu, ngày 01 tháng 12 năm 2021 Sinh viên thực hiện Lê Hoàng Nêu GVHD: PHAN NGỌC HOÀNG - SVTH: LÊ HOÀNG NÊU 3 NHẬN XÉT CỦA GIẢNG VIÊN HƯỚNG DẪN .............................................................................................................................. .............................................................................................................................. .............................................................................................................................. .............................................................................................................................. .............................................................................................................................. .............................................................................................................................. .............................................................................................................................. .............................................................................................................................. .............................................................................................................................. .............................................................................................................................. .............................................................................................................................. .............................................................................................................................. .............................................................................................................................. .............................................................................................................................. .............................................................................................................................. Vũng Tàu, ngày … tháng … năm 20… Người hướng dẫn TS. Phan Ngọc Hoàng GVHD: PHAN NGỌC HOÀNG - SVTH: LÊ HOÀNG NÊU 4 NHẬN XÉT CỦA GIẢNG VIÊN PHẢN BIỆN .............................................................................................................................. .............................................................................................................................. .............................................................................................................................. .............................................................................................................................. .............................................................................................................................. .............................................................................................................................. .............................................................................................................................. .............................................................................................................................. .............................................................................................................................. .............................................................................................................................. .............................................................................................................................. .............................................................................................................................. .............................................................................................................................. .............................................................................................................................. .............................................................................................................................. GVHD: PHAN NGỌC HOÀNG - SVTH: LÊ HOÀNG NÊU 5 MỤC LỤC DANH MỤC BẢNG _________________________________________________ 9 DANH MỤC SƠ ĐỒ ________________________________________________ 10 DANH MỤC HÌNH _________________________________________________ 11 LỜI NÓI ĐẦU _____________________________________________________ 13 CHƯƠNG 1 TỔNG QUAN __________________________________________ 14 1.1 Lý do chọn đề tài ______________________________________________ 14 1.2 Mục tiêu và chức năng của hệ thống _______________________________ 14 1.2.1 Mục tiêu _________________________________________________ 14 1.2.2 Chức năng ________________________________________________ 15 1.3 Mô tả bài toán ________________________________________________ 15 CHƯƠNG 2 CƠ SỞ LÝ THUYẾT _____________________________________ 16 2.1 Cấu trúc của chương trình _______________________________________ 16 2.2 Giới thiệu Dart và Flutter ________________________________________ 16 2.2.1 Dart _____________________________________________________ 16 2.2.2 Flutter ___________________________________________________ 17 2.3 Giới thiệu Firebase _____________________________________________ 17 2.3.1 Tổng quát ________________________________________________ 17 2.3.2 Giới thiệu Firebase Authentication _____________________________ 18 2.3.3 Giới thiệu Firebase Firestore _________________________________ 19 2.3.4 Giới thiệu Firebase Cloud Storage _____________________________ 19 2.4 Giới thiệu Visual Studio Code ____________________________________ 20 2.5 Giới thiệu GitHub _____________________________________________ 20 GVHD: PHAN NGỌC HOÀNG - SVTH: LÊ HOÀNG NÊU 6 CHƯƠNG 3 PHÂN TÍCH HỆ THỐNG _________________________________ 22 3.1 Mô tả hệ thống ________________________________________________ 22 3.1.1 Quản lý các thông báo ______________________________________ 22 3.1.2 Quản lý tin nhắn ___________________________________________ 22 3.1.3 Quản lý Tài khoản__________________________________________ 22 3.2 Xây dựng các chức năng của hệ thống _____________________________ 23 3.2.1 Mô tả các chức năng ________________________________________ 23 3.2.2 Đặc tả các chức năng chính của ứng dụng _______________________ 26 3.3 Thiết kế hệ thống ______________________________________________ 38 3.3.1 Sơ đồ cơ sở dữ liệu _________________________________________ 38 3.3.2 Chi tiết cơ sở dữ liệu ________________________________________ 42 CHƯƠNG 4 XÂY DỰNG ỨNG DỤNG ________________________________ 46 4.1 Giao diện đăng nhập. ___________________________________________ 46 4.2 Giao diện màn hình chính _______________________________________ 46 4.3 Giao diện màn hình Home _______________________________________ 47 4.3.1 Giao diện thông báo ________________________________________ 47 4.3.2 Giao diện đăng bài thông báo mới _____________________________ 49 4.3.3 Giao diện lượt thích và bình luận ______________________________ 51 4.4 Giao diện màn hình Chatroom ____________________________________ 55 4.4.1 Giao diện các nhóm chat và tạo nhóm chat ______________________ 55 4.4.2 Giao diện chi tiết của nhóm chat ______________________________ 56 4.5 Giao diện tài khoản người dùng___________________________________ 59 4.6 Giao diện màn hình khác ________________________________________ 63 4.6.1 Giao diện màn hình thông tin cá nhân của người dùng khác _________ 63 GVHD: PHAN NGỌC HOÀNG - SVTH: LÊ HOÀNG NÊU 7 CHƯƠNG 5 KẾT LUẬN ____________________________________________ 65 5.1 Kết quả đạt được ______________________________________________ 65 5.2 Hướng phát triển ______________________________________________ 65 TÀI LIỆU THAM KHẢO ____________________________________________ 67 PHỤ LỤC ________________________________________________________ 68 5.3 Sơ đồ cấu trúc ________________________________________________ 68 5.4 Code xử lý ___________________________________________________ 69 5.4.1 File main.dart _____________________________________________ 69 5.4.2 Authentication.dart _________________________________________ 70 5.4.3 File FirebaseOperations.dart __________________________________ 72 5.4.4 File PostOptions.dart _______________________________________ 74 5.4.5 File GroupMessageHelper.dart ________________________________ 86 GVHD: PHAN NGỌC HOÀNG - SVTH: LÊ HOÀNG NÊU 8 DANH MỤC BẢNG Bảng 3-4 Bảng mô tả chứa năng quản lý tài khoản của Admin _______________ 25 Bảng 3-5 Bảng mô tả chức năng thông tin cá nhân _________________________ 25 Bảng 3-6 Bảng mô tả chức năng thông báo _______________________________ 25 Bảng 3-7 Bảng mô tả chức năng thích bài thông báo _______________________ 25 Bảng 3-7 Bảng mô tả chức năng bình luận bài thông báo ____________________ 25 Bảng 3-8 Bảng mô tả chức năng nhóm chat ______________________________ 26 Bảng 3-8 Bảng mô tả chức năng nhắn tin trong nhóm chat __________________ 26 Bảng 3-8 Bảng mô tả chức năng thành viên trong nhóm chat_________________ 26 Bảng 3-12 Cơ sở dữ liệu bảng tài khoản người dùng _______________________ 42 Bảng 3-13 Cơ sở dữ liệu bảng following _________________________________ 42 Bảng 3-14 Cơ sở dữ liệu bảng followers _________________________________ 43 Bảng 3-15 Cơ sở dữ liệu bảng thông tin cá nhân __________________________ 43 Bảng 3-16 Cơ sở dữ liệu bảng thông báo ________________________________ 44 Bảng 3-17 Cơ sở dữ liệu bảng lượt thích _________________________________ 44 Bảng 3-18 Cơ sở dữ liệu bảng bình luận _________________________________ 44 Bảng 3-19 Cơ sở dữ liệu bảng phòng chat________________________________ 44 Bảng 3-20 Cơ sở dữ liệu bảng thành viên trong phòng chat __________________ 45 Bảng 3-21 Cơ sở dữ liệu bảng hóa đơn __________________________________ 45 GVHD: PHAN NGỌC HOÀNG - SVTH: LÊ HOÀNG NÊU 9 DANH MỤC SƠ ĐỒ Sơ đồ 1 Sơ đồ user-case của tài khoản User ............................................................. 23 Sơ đồ 2 Sơ đồ user-case tài khoản Manager ............................................................. 24 Sơ đồ 3 Sơ đồ user-case tài khoản Admin ................................................................ 24 Sơ đồ 4 Sơ đồ tuần tự quá trình đăng nhập............................................................... 27 Sơ đồ 5 Sơ đồ tuần tự quá trình sửa thông tin cá nhân ............................................. 28 Sơ đồ 6 Sơ đồ tuần tự quá trình bình luận ở bài thông báo ...................................... 29 Sơ đồ 7 Sơ đồ tuần tự quá trình nhắn tin trong nhóm chat ....................................... 30 Sơ đồ 8 Sơ đồ quá trình tìm kiếm thông tin người dùng .......................................... 31 Sơ đồ 9 Sơ đồ tuần tự quá trình theo dõi người dùng khác (following) ................... 32 Sơ đồ 10 Sơ đồ tuần tự quá trình đăng bài thông báo không có hình ảnh ................ 33 Sơ đồ 11 Sơ đồ tuần tự quá trình đăng bài thông báo có hình ảnh ........................... 34 Sơ đồ 12 Sơ đồ tuần tự quá trình tạo nhóm chat....................................................... 35 Sơ đồ 13 Sơ đồ tuần tự quá trình thêm thành viên vào nhóm chat ........................... 36 Sơ đồ 14 Sơ đồ tuần tự quá trình xem và xóa tài khoản ........................................... 37 Sơ đồ 15 Sơ đồ tuần tự quá trình tạo tài khoản......................................................... 38 Sơ đồ 16 Sơ đồ cơ sở dữ liệu của người dùng (User) ............................................... 39 Sơ đồ 17 Sơ đồ cơ sở dữ liệu của bài thông báo (Post) ............................................ 40 Sơ đồ 18 Sơ đồ cơ sở dữ liệu phòng chat (Chatroom).............................................. 41 Sơ đồ 19 Sơ đồ cơ sở dữ liệu tổng quát .................................................................... 42 GVHD: PHAN NGỌC HOÀNG - SVTH: LÊ HOÀNG NÊU 10 DANH MỤC HÌNH Hình 1 Biểu tương của Dart ___________________________________________ 16 Hình 2 Biểu tượng của Flutter _________________________________________ 17 Hình 3 Biểu tượng của Firebase _______________________________________ 17 Hình 4 Biểu tượng của Firebase Authentication ___________________________ 18 Hình 5 Biểu tượng của Firebase Firestore ________________________________ 19 Hình 6 Biểu tượng của Cloud Storage ___________________________________ 20 Hình 7 Biểu tượng của VS Code _______________________________________ 20 Hình 8 Biểu tượng của GiHub _________________________________________ 21 Hình 9 Giao diện đăng nhập __________________________________________ 46 Hình 10 Giao diện màn hình chính lần lượt Home. Chatroom, Account ________ 47 Hình 11 Giao diện màn hình Home và các thông tin _______________________ 48 Hình 12 Giao diện màn hình Home khi có nhiều bài viết vượt quá màn hình ____ 49 Hình 13 Giao diện màn hình tạo bài thông báo ____________________________ 50 Hình 14 Giao diện chọn phương thức lấy ảnh _____________________________ 50 Hình 16 Giao diện xác nhận ảnh hoặc chọn lại ____________________________ 51 Hình 15 Giao diện khi đã xác nhận ảnh __________________________________ 51 Hình 17 Giao diện các lượt thích _______________________________________ 52 Hình 18 Giao diện khi có bình luận _____________________________________ 53 Hình 19 Giao diện màn hình bình luận __________________________________ 53 Hình 20 Giao diện khi nhấn vào nút setting ______________________________ 54 Hình 21 Nút setting khi là chủ sở hữu thông báo __________________________ 54 Hình 22 Giao diện hỏi người dùng chắc chắn xóa bài thông báo ______________ 54 Hình 23 Giao diện màn hình các nhóm chat ______________________________ 55 Hình 24 Giao diện tạo nhóm chat ______________________________________ 56 Hình 25 Giao diện khi có tin nhắn ______________________________________ 57 Hình 26 Giao diện màn hình chi tiết của nhóm chat ________________________ 57 GVHD: PHAN NGỌC HOÀNG - SVTH: LÊ HOÀNG NÊU 11 Hình 27 Giao diện menu của nhóm chat _________________________________ 58 Hình 29 Giao diện thêm thành viên ___________________________________ 59 Hình 28 Giao diện chuyển quyền sở hữu_________________________________ 59 Hình 30 Giao diện tài khoản người dùng_________________________________ 60 Hình 32 Giao diện hiển thị Following ___________________________________ 61 Hình 31 Giao diện hiển thị Followers ___________________________________ 61 Hình 33 Giao diện Menu _____________________________________________ 62 Hình 35 Giao diện Update Information __________________________________ 63 Hình 34 Giao diện thông báo đăng xuất _________________________________ 63 Hình 36 Giao diện thông tin cá nhân của người dùng khác __________________ 64 GVHD: PHAN NGỌC HOÀNG - SVTH: LÊ HOÀNG NÊU 12 LỜI NÓI ĐẦU Trong thế giới ngày nay, công nghệ thông tin (CNTT) là một công cụ quan trọng hỗ trợ cho doanh nghiệp chuyển biến. Gặt hái lợi ích tối đa từ các khoản đầu tư vào công nghệ để duy trì khả năng cạnh tranh là một trong những ưu tiên cao nhất của các nhà lãnh đạo doanh nghiệp ngày nay. Trên thực tế, thật khó để tưởng tượng bất kỳ doanh nghiệp nào không được hưởng lợi từ công nghệ thông tin. Mỗi doanh nghiệp cần phải chọn cho mình mô hình đầu tư CNTT cho phù hợp để phát huy hiệu quả các khoản đầu tư, phục vụ cho mục tiêu kinh doanh và phù hợp với năng lực khai thác công nghệ của doanh nghiệp. Ngay cả trong lĩnh vực nông nghiệp cũng đã sử dụng máy tính. Nông dân sử dụng máy tính cho sản xuất, tài chính, nghiên cứu về các vấn đề kỹ thuật và mua sắm. Ngày nay, công thức để thành công trong kinh doanh rất đơn giản: thúc đẩy đổi mới công nghệ thông tin. Hiện nay, việc CNTT đã quá phát triển đã dẫn đến sự đột phá, thay đổi trong những công việc từ xưa đến nay. Theo thời gian mọi thứ đều phụ thuộc vào CNTT, bùng nổ các công việc liên quan đến lĩnh vực này. Các học sinh, sinh viên trên toàn thế giới nói chung hay Việt Nam nói riêng đều có những suy đi theo thời đại. Điều này đã dẫn đến việc xuất hiện vô số các công ty về Công nghệ đã được xây dựng và cạnh tranh với nhau. Trong đó công việc quản lý từ lâu nay đang được quản lý truyền thống bằng giấy tờ thì bây giờ cũng đã được phát triển và lưu trữ mọi thứ trên máy tính và điện thoại. Các ứng dụng quản lý đã ra đời, từ quản lý nhân lực cho đến dự án, sản phẩm,… Tất cả đều được các doanh nghiệp hướng mình về các thiết bị thông minh. Chính vì lí do đó, đề tài “Ứng dụng quản lý các thông báo NSocial” được ra đời. Hướng tới những doanh nghiệp có quy mô nhỏ - vừa muốn áp dụng công nghệ với chi phí thấp đơn giản dể sử dụng. Hy vọng sẽ đem giúp cho quá trình quản lí được chặt chẽ, nâng cao hiệu xuất. GVHD: PHAN NGỌC HOÀNG - SVTH: LÊ HOÀNG NÊU 13 CHƯƠNG 1 TỔNG QUAN 1.1 Lý do chọn đề tài Hiện nay hầu hết các doanh nghiệp quản lí các thông báo cho nhân viên thông qua phần mềm thứ 3 như Zalo, Facebook, Microsoft Teams,.. Việc phải dùng một phần mềm thứ 3 sẽ phải chịu ràng buộc, đôi khi sẽ làm rò rỉ thông tin. Giải pháp đưa ra là sử dụng một phần mềm tự doanh nghiệp tạo ra, tránh được việc rò rỉ thông tin, cơ sở dữ liệu do công ty tự quản lí, tự thiết lập. Sẽ dể dàng thiết lập các trường dữ liệu phù hợp với mong muốn của công ty. Các doanh nghiệp nhỏ thường dùng phần mềm để thông báo cho nhân viên là các phần mềm mạng xã hội, dẫn đến việc bị trôi thông báo là có thể xảy ra. Vì mạng xã hội là nơi mà các nhân viên có thể có nhiều mối quan hệ khác, các thông báo có thể dày đặt, khi đó thông báo mà công ty gửi đến có thể bị trôi đi mà không hề để ý, ảnh hưởng đến công việc. Hoặc trong lúc làm việc nhân viên có thể dùng kẻ hở các ứng dụng mạng xã hội này mà mất tập trung, làm hiệu quả công việc suy giảm. Thực tế đã có nhiều hệ thống được tạo ra cho mục đích này, tuy nhiên việc làm ra một ứng dụng hoàn chỉnh để quản lí tất các mặt của công ty phải cần thời gian, tiền bạc. Nên các doanh nghiệp nhỏ thường sẽ lựa chọn dùng phần mềm thứ 3 có sẵn. Từ lí do đó ứng dụng “NSocial” - ứng dụng dùng để quản lí các thông báo cho nhân viên - là giải pháp tiên tiến, hiệu quả trong việc gửi các thông báo đến nhân viên. 1.2 Mục tiêu và chức năng của hệ thống 1.2.1 Mục tiêu Gửi các thông báo đến nhân viên mỗi khi có thông báo mới, có thể trao đổi thông tin giữa các cá nhân với nhau. Các mục tiêu bao gồm: ➢ Đưa thông báo của doanh nghiệp đến nhân viên. ➢ Trao đổi các thông tin thông qua ứng dụng. ➢ Tìm kiếm, trích xuất dữ liệu nhanh chóng và chính xác. GVHD: PHAN NGỌC HOÀNG - SVTH: LÊ HOÀNG NÊU 14 ➢ Tham gia thắc mắc về các thông báo ngay lập tức. ➢ Xem các thông tin cá nhân. ➢ … Trong môi trường phân xưởng, công nghệ thông tin không chỉ thay đổi cách thức con người thực hiện công việc quản lý mà còn thay đổi cả cách thức họ thông tin cho nhau, xử lý thông tin và ra quyết định. 1.2.2 Chức năng ✓ Quản lý thông báo ✓ Quản lý nhân viên ✓ Quản lý các thông tin trao đổi 1.3 Mô tả bài toán ➢ Mục đích của ứng dụng là đưa các thông báo, thông tin đến các nhân viên nhanh chóng, giúp nắm bắt và hoàn thành tiến độ công việc đúng thời hạn. ✓ Quản lý thông báo: o Quản lý danh mục thông báo. o Quản lý thông tin phản hồi thông báo. ✓ Quản lý nhân viên: o Quản lý thông tin cá nhân. o Quản lý tài khoản. ✓ Quản lý thông tin trao đổi: o Quản lý thông tin trao đổi. GVHD: PHAN NGỌC HOÀNG - SVTH: LÊ HOÀNG NÊU 15 CHƯƠNG 2 CƠ SỞ LÝ THUYẾT 2.1 Cấu trúc của chương trình Ứng dụng “Nsocial” được phát triển trên nền tảng: Ứng dụng di động. Gồm các công nghệ: ➢ Ngôn ngữ lập trình: Dart. ➢ Framework: Flutter. ➢ Cơ sở dữ liệu: Firebase với các công nghệ hỗ trợ: ✓ Firebase Authentication ( hỗ trợ đăng nhập ) ✓ Firebase Firestore ( hỗ trợ lưu trữ cơ sở dữ liệu ) ✓ Cloud Storage ( hỗ trợ lưu trữ các hình ảnh, media ) ➢ Phần mềm hỗ trợ viết code: Visual Studio Code (VS Code). ➢ Hỗ trợ quản lý dự án: Github. 2.2 Giới thiệu Dart và Flutter 2.2.1 Dart Hình 1 Biểu tương của Dart Dart là ngôn ngữ lập trình đa mục đích ban đầu được phát triển bởi Google và sau đó được Ecma (ECMA-408) phê chuẩn làm tiêu chuẩn. Nó được sử dụng để xây dựng các ứng dụng web, server, máy tính để bàn và thiết bị di động. Dart là một ngôn ngữ hướng đối tượng, được xác định theo lớp, với cơ chế garbage-collected, sử dụng cú pháp kiểu C để dịch mã tùy ý sang JavaScript. Nó hỗ trợ interface, mixin, abstract, generic, static typing và sound type (2 cái cuối có thể hiểu là type-safe). Dart là ngôn ngữ mã nguồn mở và miễn phí, được phát triển trên Github. Hiện nay Dart đã ra mắt phiên bản 2.2. GVHD: PHAN NGỌC HOÀNG - SVTH: LÊ HOÀNG NÊU 16 2.2.2 Flutter • Flutter là mobile UI framework của Google để tạo ra các giao diện chất lượng cao trên iOS và Android trong khoảng thời gian ngắn. Flutter hoạt động với những code sẵn có được sử dụng bởi các lập trình viên, các tổ chức. • Flutter hoàn toàn miễn phí và cũng là mã nguồn mở. • Flutter sử dụng Dart, một ngôn ngữ nhanh, hướng đối tượng với nhiều tính năng hữu ích như mixin, generic, isolate, và static type. • Flutter có các thành phần UI của riêng nó, cùng với một cơ chế để kết xuất chúng trên nền tảng Android và iOS. Hầu hết các thành phần giao diện người dùng, đều sẵn dùng, phù hợp với các nguyên tắc của Material Design. • Các ứng dụng Flutter có thể được phát triển bằng cách4 sử dụng IntelliJ IDEA, một IDE rất giống với Android Studio. • Flutter hiện tại hỗ trợ đa nền tảng gồm: mobile (android, IOS), web, Desktop. Hình 2 Biểu tượng của Flutter 2.3 Giới thiệu Firebase 2.3.1 Tổng quát Hình 3 Biểu tượng của Firebase GVHD: PHAN NGỌC HOÀNG - SVTH: LÊ HOÀNG NÊU 17 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. 2.3.2 Giới thiệu Firebase Authentication Hình 4 Biểu tượng của Firebase Authentication • Là một bộ công cụ WSGI (Web Server Gateway Interface) đảm nhiệm các yêu cầu, phản hồi đối tượng (objects) và các chức năng tiện ích khác. Flask sử dụng Werkzeug làm một trong những cơ sở của chính nó. Firebase Authentication là chức năng xác thực người dùng. Hiểu một cách đơn giản, app của bạn cần phải đăng nhập/ đăng ký tài khoản để sử dụng, Firebase cung cấp cho chúng ta chức năng xác thực người dùng bằng email, số điện thoại, hay tài khoản Facebook, Google,.... • Ứng dụng chỉ xây dựng chức năng xác thực bằng email, do đây là ứng dụng quản lí nội bộ doanh nghiệp nên các chức năng hộ trợ như Facebook hay Google sẽ không được sử dụng. GVHD: PHAN NGỌC HOÀNG - SVTH: LÊ HOÀNG NÊU 18 2.3.3 Giới thiệu Firebase Firestore Hình 5 Biểu tượng của Firebase Firestore • Cloud Firestore là cơ sở dữ liệu mới của Firebase phát triển dành cho ứng dụng di động. Nó là sự kế thừa của Realtime Database với mô hình dữ liệu mới và trực quan hơn. Cloud Firestore phong phú hơn, nhanh hơn và có khả năng mở rộng siêu việt hơn so với Realtime. • Giống như Firebase Realtime Database, nó giúp dữ liệu của bạn đồng bộ hóa trên các ứng dụng client thông qua việc đăng ký realtime và cung cấp hỗ trợ ngoại tuyến cho thiết bị di động và web. Cloud Firestore cũng cung cấp tích hợp với các sản phẩm khác của Firebase và Google Cloud Platform, bao gồm cả Cloud Functions. 2.3.4 Giới thiệu Firebase Cloud Storage • Firebase Cloud Storage là một không gian lưu trữ dữ liệu, nó giống như một chiếc ổ cứng. Bạn có thể upload và download các loại file bạn muốn. Đó có thể là một file ảnh, hay file văn bản, .zip, … • Phân biệt Firebase cloud storage với Firebase realtime database. Câu trả lời rất đơn giản, Firebase là một cơ sở dữ liệu- nơi bạn có thể lưu trữ các thông tin về tài khoản người dùng, hay các thông tin về một mặt hàng nếu bạn xây dựng một app bán hàng. • Còn với Firebase cloud storage, chúng là nơi lưu trữ những file, đó có thể là những hình ảnh về một mặt hàng chẳng hạn. Bạn có thể lưu trữ link tới file hình ảnh trong database, còn file ảnh đặt trong cloud storage. Vậy là client có thể dễ dàng truy vấn và sử dụng. GVHD: PHAN NGỌC HOÀNG - SVTH: LÊ HOÀNG NÊU 19 Hình 6 Biểu tượng của Cloud Storage 2.4 Giới thiệu Visual Studio Code Hình 7 Biểu tượng của VS Code Visual Studio Code (VS Code hay VSC) là một trong những trình soạn thảo mã nguồn phổ biến nhất được sử dụng bởi các lập trình viên. Nhanh, nhẹ, hỗ trợ đa nền tảng, nhiều tính năng và là mã nguồn mở chính là những ưu điểm vượt trội khiến VS Code ngày càng được ứng dụng rộng rãi. ➢ Hỗ trợ hầu hết ngôn ngữ lập trình hiện nay. ➢ Cấu hình yêu cầu nhẹ, dể sử dụng. ➢ Hỗ trợ rất nhiều extensions tiện lợi. ➢ Tích hợp được với các công nghệ quản lý dữ án như Git, github, gitlab,… ➢ Và nhiều thứ tiện ích khác. 2.5 Giới thiệu 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. GVHD: PHAN NGỌC HOÀNG - SVTH: LÊ HOÀNG NÊU 20
- Xem thêm -

Tài liệu liên quan

Tài liệu xem nhiều nhất