Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 75 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
75
Dung lượng
671,14 KB
Nội dung
ĐẠI HỌC QUỐC GIA TP HỒ CHÍ MINH TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN KHOA CÔNG NGHỆ PHẦN MỀM VÕ VĂN TÀI TRIỂN – 17521158 HỒNG CƠNG MINH – 17520747 KHÓA LUẬN TỐT NGHIỆP XÂY DỰNG ỨNG DỤNG TRAO ĐỔI SÁCH VỚI NESTJS FRAMEWORK Build books exchange application with NestJs Framework KỸ SƯ NGÀNH KỸ THUẬT PHẦN MỀM TP HỒ CHÍ MINH, 2021 ĐẠI HỌC QUỐC GIA TP HỒ CHÍ MINH TRƯỜNG ĐẠI HỌC CƠNG NGHỆ THƠNG TIN KHOA CÔNG NGHỆ PHẦN MỀM VÕ VĂN TÀI TRIỂN – 17521158 HỒNG CƠNG MINH – 17520747 KHĨA LUẬN TỐT NGHIỆP XÂY DỰNG ỨNG DỤNG TRAO ĐỔI SÁCH VỚI NESTJS FRAMEWORK Build books exchange application with NestJs Framework KỸ SƯ NGÀNH KỸ THUẬT PHẦN MỀM GIẢNG VIÊN HƯỚNG DẪN THS HUỲNH NGUYỄN KHẮC HUY TS TRẦN SƠN HẢI TP HỒ CHÍ MINH, 2021 TP HỒ CHÍ MINH, 2021 DANH SÁCH HỘI ĐỒNG BẢO VỆ KHĨA LUẬN Hội đồng chấm khóa luận tốt nghiệp, thành lập theo Quyết định số ……………… …… ngày ……………… Hiệu trưởng Trường Đại học Công nghệ Thông tin ………………………………………… – Chủ tịch ………………………………………… – Thư ký ………………………………………… – Ủy viên ………………………………………… – Ủy viên ĐẠI HỌC QUỐC GIA TP HỒ CHÍ MINH Độc Lập - Tự Do - Hạnh Phúc TRƯỜNG ĐẠI HỌC CƠNG NGHỆ THƠNG TIN CỘNG HỊA XÃ HỘI CHỦ NGHĨA VIỆT NAM TP.Hồ Chí Minh, …tháng, …năm NHẬN XÉT KHĨA LUẬN TỐT NGHIỆP (CỦA CÁN BỘ HƯỚNG DẪN) Tên khóa luận: XÂY DỰNG ỨNG DỤNG TRAO ĐỔI SÁCH VỚI NESTJS FRAMEWORK Nhóm sinh viên thực hiện: Cán hướng dẫn: VÕ VĂN TÀI TRIỂN 17521158 Ths HUỲNH NGUYỄN KHẮC HUY HỒNG CƠNG MINH 17520747 Ts TRẦN SƠN HẢI Đánh giá khóa luận: Về báo cáo: Số trang: Số chương: Số bảng số liệu: Số hình vẽ: Số tài liệu tham khảo: Một số nhận xét khác hình thức báo cáo: Sản phẩm: Về nội dung nghiên cứu: Về chương trình ứng dụng: Về thái độ làm việc sinh viên: Đánh giá chung: Điểm sinh viên: VÕ VĂN TÀI TRIỂN: ……/10 HỒNG CƠNG MINH: ……/10 Người nhận xét ĐẠI HỌC QUỐC GIA TP HỒ CHÍ MINH (Ký ghi rõ họ tên) Độc Lập - Tự Do - Hạnh Phúc TRƯỜNG ĐẠI HỌC CƠNG NGHỆ THƠNG TIN CỘNG HỊA XÃ HỘI CHỦ NGHĨA VIỆT NAM TP.Hồ Chí Minh, …tháng, …năm NHẬN XÉT KHÓA LUẬN TỐT NGHIỆP (CỦA CÁN BỘ PHẢN BIỆN) Tên khóa luận: XÂY DỰNG ỨNG DỤNG TRAO ĐỔI SÁCH VỚI NESTJS FRAMEWORK Nhóm sinh viên thực hiện: Cán phản biện: VÕ VĂN TÀI TRIỂN 17521158 HỒNG CƠNG MINH 17520747 Đánh giá khóa luận: Về báo cáo: Số trang: Số chương: Số bảng số liệu: Số hình vẽ: Số tài liệu tham khảo: Một số nhận xét khác hình thức báo cáo: Sản phẩm: Về nội dung nghiên cứu: Về chương trình ứng dụng: Về thái độ làm việc sinh viên: Đánh giá chung: Điểm sinh viên: VÕ VĂN TÀI TRIỂN: ……/10 HỒNG CƠNG MINH: ……/10 Người nhận xét (Ký ghi rõ họ tên) LỜI CẢM ƠN Sau chặng đường bốn năm học tập rèn luyện khoa Công Nghệ Phần Mềm trường Đại học Công Nghệ Thông Tin – ĐHQG TP.HCM, nhóm chúng em trang bị nhiều hành trang hữu ích thực tế để hồn thành khóa luận tốt nghiệp tiếp bước đoạn đường đời Để hồn thành khóa luận này, ngồi nỗ lực khơng ngừng thân cịn có giúp đỡ, hướng dẫn tận tình nhà trường, gia đình, thầy giảng viên bạn bè suốt q trình học tập Nhóm chúng em xin gửi lời cảm ơn chân thành sâu sắc đến: Ban Giám hiệu, giảng viên tất cán nhân viên đã, công tác trường Đại học Công nghệ Thông tin – ĐHQG TP.HCM tạo điều kiện tốt để nhóm học tập rèn luyện môi trường Thầy Huỳnh Nguyễn Khắc Huy Thầy Trần Sơn Hải người lái đò giúp đỡ nhóm em khơng suốt thời gian thực khóa luận mà cịn thời gian học tập trường Đại học Công Nghệ Thông Tin Cảm ơn hai thầy lời góp ý, động viên quý báu chân thành Những lời góp ý khơng giúp nhóm em phát triển mà cịn giá trị bền vững mà nhóm tiếp tục mang theo đường tương lai phía trước Và lời cảm ơn cịn lại, nhóm em xin gửi đến gia đình, tất thầy giảng viên, nhân viên Đại học Công nghệ Thông Tin nói chung khoa Cơng Nghệ Phần Mềm nói riêng Bên cạnh tập thể lớp PMCL2017.2 người bạn tuyệt vời, luôn sẵn sàng giúp đỡ học tập sống Lời cuối cùng, nhóm em chân thành cảm ơn tất người Chúc người gặp nhiều thành công may mắn đường phía trước TP.Hồ Chí Minh, … tháng … năm ĐẠI HỌC QUỐC GIA TP HỒ CHÍ MINH Nhóm thực Độc Lập - Tự Do - Hạnh Phúc TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM TP.Hồ Chí Minh, …tháng, …năm ĐỀ CƯƠNG CHI TIẾT Tên đề tài: Xây dựng ứng dụng trao đổi sách với NestJs Framework Cán hướng dẫn: Ths Huỳnh Nguyễn Khắc Huy Ts Trần Sơn Hải Thời gian thực hiện:Từ ngày…08/03/2021…đến ngày……26/06/2021……… Sinh viên thực hiện: Võ Văn Tài Triển – 17521158 Hồng Cơng Minh – 17520747 Nội dung đề tài: Mục tiêu chọn đề tài Sách nguồn kiến thức vô tận nhân loại, việc sở hữu học hỏi từ sách mang lại nhiều kiến thức, kỹ so với việc tham gia khóa học, hay tìm kiếm thơng tin từ internet thời kỳ nhiễu loạn thông tin 1.1 Hiện trạng Một khảo sát quốc tế năm 2016 cho thấy người Việt Nam đọc sách nhiều so với nước khu vực, có 30% người Việt đọc sách thường xuyên, 44% đọc sách, 26% hồn tồn khơng đọc sách Trong Ấn Độ đọc 11 giờ/tuần, Đài Loan đọc giờ/tuần, Nhật Bản đọc giờ/tuần,… người Việt Nam trung bình đọc chưa tới giờ/tuần (trích dẫn báo Thanhnien.vn) 1.2 Vấn đề Với nhu cầu đọc sách, nghiên cứu sinh viên nói riêng người đọc sách nói chung gặp khó khăn khơng có đủ điều kiện để mua sách Bên cạnh đó, nhu cầu đọc sách nghiên cứu tìm hiểu cao với chi phí rẻ thường xảy số trường hợp mua phải sách giả, sách có chất lượng không ổn định… Trong thực tế hoạt động trao đổi sách thực thông qua cách truyền thống: • Ngày hội trao đổi sách • Các buổi offline nhỏ lẻ để người yêu sách gặp gỡ Tuy nhiên, cách truyền thống gặp nhiều khó khăn hoạt động trao đổi: o Sự cố định địa điểm thời gian dẫn tới hạn chế người tham gia, hoạt động không thường xuyên, nhu cầu trao đổi thường xuyên liên tục o Tốn chi phí để tổ chức ngày hội hay buổi offline để người trao đổi sách 1.3 Nhu cầu thực tế - Tăng nguồn kiến thức từ sách, đọc nhiều đầu sách với chi phí phải Tìm kiếm sưu tầm/chia sẻ loại sách cổ khơng cịn sản xuất - Quyên góp/tặng sách từ thiện giao lưu - Chia sẻ quan điểm thân đầu sách đọc - Tìm kiếm bạn bè có sở thích loại sách - Cập nhật thông tin ngày hội sách gần khu vực sinh sống 1.4 Giải pháp - Mua sách cũ cửa hàng, sạp bán sách cũ/mới/giả lề đường - Đăng trao đổi/tặng sách nhóm cộng đồng facebook Đăng mua/bán sách nhóm cộng đồng facebook - Mua sách kênh thơng tin khơng thống, khơng phải cơng ty phát hành Tìm đọc sách lậu trực tuyến/pdf Đối tượng nghiên cứu 2.1 Công nghệ: - Mobile: Flutter - Backend: MySQL/NestJs 2.2 Người dùng: - Độ tuổi: 16 – 26 tuổi - Sở thích: Đọc sách, khám phá nhiều loại sách - Tình trạng chung: Độc thân - Nghề nghiệp: Học sinh, sinh viên, làm có nhu cầu đọc sách Phương pháp thực 3.1 Phương pháp làm việc nhóm: - Nhóm làm việc thơng qua hai hình thức trực tuyến offline hướng dẫn giảng viên - Quản lý dự án thông qua công cụ trello Dùng để quản lý chức năng, nhiệm vụ, hạn mức mục tiêu đề 3.2 Phương pháp phân tích thiết kế: - Phân tích nhu cầu thị trường thơng qua nhóm hoạt động mạng xã hội cụ thể Facebook Từ đó, đưa hành vi, thói quen sử dụng đối tượng hướng tới, tìm vấn đề nhu cầu họ - Thiết kế UI/UX thông qua công cụ AdobeXD để nhằm đảm bảo tương thích, phù hợp với đối tượng nhắm tới Đồng thời đạt thống trước bắt đầu triển khai Kết mong đợi 4.1 Tính cơng nghệ - Nắm cơng nghệ phát triển ứng dụng đa tảng Flutter Có thể nắm kỹ thuật liên quan 4.2 Tính ứng dụng - Ứng dụng đáp ứng nhu cầu thị trường - Có thể phát triển tương lai - Giao diện trải nghiệm phù hợp với nhóm đối tượng hướng tới - Góp phần thúc đẩy văn hóa đọc Việt Nam Kế hoạch thực hiện: Giai đoạn Thời gian Võ Văn Tài Triển Hồng Cơng Minh Khảo sát, 1/3/2021 - 7/3/2021 - Lựa chọn đề tài - Khảo sát - Khảo sát ứng ứng dụng dụng tương tự - Nghiên cứu - Lựa chọn công công nghệ ứng nghệ tìm hiểu, dụng di động, nghiên cứu sử backend nghiên cứu dụng Hình 3.9 Sơ đồ use case thêm xóa sửa đăng 44 Use case xem chi tiết trao đổi sách ➢ Mục đích: Cho phép người dùng xem chi tiết tin trao đổi tên ứng dụng ➢ Tác nhân: Người dùng cuối hệ thống ➢ Mô tả: Sau người dùng đăng nhập thành công vào hệ thống xem chi tiết tin trao đổi, người dùng thấy tồn thơng tin tin trao đổi (Hình ảnh sách trao đổi, thông tin liên hệ, địa chỉ, …) Hình 3.10 Sơ đồ use case liên hệ 45 b Sơ đồ lớp Hình 3.11 Sơ đồ lớp 46 ❖ Mô tả sơ đồ lớp: STT Tên lớp Mô tả USERS Bảng lưu thông tin người dùng BOOKS Bảng lưu thông tin sách BOOKS_AUTHORS Bảng lưu thông tin quan hệ tác giả với sách AUTHORS Bảng lưu thông tin tác giả, nhà sáng tác BOOKS_CATEGORIES Bảng lưu thông tin quan hệ sách với thể loại sách BOOKS_IMAGES Bảng lưu thông tin quan hệ sách với hình ảnh BOOKS_PUBLISHERS Bảng lưu thông tin quan hệ sách với nhà phát hành CATEGORIES Bảng lưu thông tin thể loại sách IMAGES Bảng lưu thông tin hình ảnh 10 POSTS Bảng lưu thơng tin đăng trao đổi sách 11 POSTS_IMAGES Bảng lưu thông tin quan hệ đăng với hình ảnh 12 PUBLISHERS Bảng lưu thông tin nhà phát hành 13 RATING_BOOK Bảng lưu thông tin chấm điểm người dùng với sách 14 REVIEWS Bảng lưu thông tin đánh giá người dùng sách 15 USERS_CATEGORIES Bảng lưu thông tin quan hệ người dùng với thể loại sách Bảng 3.1 Mô tả sơ đồ lớp 47 3.1.4 Phân tích thiết kế sở liệu - Dựa việc xác định yêu cầu phân tích yêu cầu, ứng dụng Shaboo bao gồm đối tượng sau đây: STT Tên đối tượng Thuộc tính USERS ID, ROLE, CREATED_AT, UPDATED_AT, FIRST_NAME, LAST_NAME, FACEBOOK, INSTAGRAM, FIREBASE, USERNAME, EMAIL, PASSWORD, PHONE, GENDER, BIRTH, AVATAR, FIREBASE_ID, FACEBOOK_ID, GOOGLE_ID BOOKS ID, NAME, REPUBLISH_VERSION, SHORT_DESCRIPTION, THUMBNAIL_URL, DESCRIPTION, ADDITIONAL_INFO, CREATED_AT, UPDATED_AT, RATING_ID AUTHORS ID, NAME, SLUG, ADDITIONAL_INFO, CREATED_AT, UPDATED_AT CATEGORIES ID, NAME, DESCRIPTIONS, SLUG, CREATED_AT, UPDATED_AT IMAGES ID, LINK, SLUG, ADDITIONAL_INFO, FILENAME, TYPE, CREATED_AT, UPDATED_AT, UPDATED_BY POSTS ID, CREATED_AT, UPDATED_AT, TITLE, DESCRIPTION, LOCATION, STATUS, ADDITIONAL_INFO, BOOK_ID, USER_ID PUBLISHERS ID, NAME, SLUG, ADDITIONAL_INFO, CREATED_AT, UPDATED AT RATING_BOOK ID, CREATED_AT, UPDATED_AT, RATING_COUNT, TOTAL_SCORE, FINAL_SCORE, BOOK_ID 48 REVIEWS ID, CREATED_AT, UPDATED_AT, REVIEW, SCORE, TAGS, BOOK_ID, USER_ID, IS_DELETED Bảng 3.2 Phân tích thiết kế sở liệu Bảng USERS Tên trường Kiểu liệu Ràng buộc Mô tả ID INT UNSIGNED Tăng tự động Primary key Mã ID người dùng FIRST_NAME VARCHAR(30) NULL Tên người dùng LAST_NAME VARCHAR(30) NULL Họ người dùng AVATAR TEXT NULL Đường dẫn đến hình đại diện người dùng FACEBOOK TEXT NULL Đường dẫn đến facebook cá nhân người dùng INSTAGRAM TEXT NULL Đường dẫn đến instagram cá nhân người dùng FIREBASE TEXT NULL Thông tin firebase người dùng ROLE ENUM('USER','AD MIN','PROVIDER',' C OLLAB') NULL Phân quyền người dùng USERNAME VARCHAR(100) NULL Tên đăng nhập người dùng EMAIL VARCHAR(100) NULL Địa email người dùng NULL Mật người dùng, mã hóa trước lưu 49 PASSWORD VARCHAR(200) PHONE VARCHAR(12) NULL Số điện thoại người dùng GENDER ENUM('MALE','FE MALE','UNIDENTI F IED') NULL Giới tính người dùng BIRTH DATE NULL Ngày sinh người dùng FIREBASE_ID VARCHAR(100) NULL Thông tin firebase ID người dùng FACEBOOK_ID VARCHAR(30) NULL Thông tin facebook ID người dùng GOOGLE_ID VARCHAR(30) NULL Thông tin google ID người dùng Bảng 3.3 Bảng USERS Bảng BOOKS Tên trường Kiểu liệu Ràng buộc Mô tả ID INT UNSIGNED Tăng tự động Primary key Mã ID sách NAME TEXT NOT NULL Tên sách REPUBLISH_VER SI ON INT NULL Phiên phát hành SHORT_DESCRIP TI ON LONGTEXT NULL Mơ tả ngắn sách NULL Hình ảnh mơ tả sách 50 THUMBNAIL_URL TEXT DESCRIPTION LONGTEXT NULL Mô tả chi tiết sách ADDITIONAL_IN FO JSON NULL Thông tin thêm sách RATING_ID INT UNSIGNED NULL Thông tin ID bảng điểm sách Bảng 3.4 Bảng BOOKS Bảng BOOKS_AUTHORS Tên trường Kiểu liệu Ràng buộc Mô tả ID INT UNSIGNED Tăng tự động Primary key Mã ID quan hệ sách tác giả BOOK_ID INT UNSIGNED NOT NULL Foreign key Mã ID sách AUTHOR_ID INT UNSIGNED NOT NULL Foreign key Mã ID tác giả Bảng 3.5 Bảng BOOKS_AUTHORS Bảng AUTHORS Tên trường Kiểu liệu Ràng buộc Mô tả ID INT UNSIGNED Tăng tự động Primary key Mã ID tác giả NAME TEXT NOT NULL Tên tác giả SLUG TEXT NOT NULL Mã tác giả ADDITIONAL_IN FO JSON NULL Thông tin thêm Bảng 3.6 Bảng AUTHORS 51 Bảng BOOKS_CATEGORIES Tên trường Kiểu liệu Ràng buộc Mô tả ID INT UNSIGNED Tăng tự động Primary key Mã ID quan hệ sách với thể loại sách BOOK_ID INT UNSIGNED NOT NULL Foreign key Mã ID sách CATEGORY_ID INT UNSIGNED NOT NULL Foreign key Mã ID thể loại sách Bảng 3.7 Bảng BOOKS_CATEGORIES Bảng BOOKS_IMAGES Tên trường Kiểu liệu Ràng buộc Mô tả ID INT UNSIGNED Tăng tự động Primary key Mã ID quan hệ sách với hình ảnh BOOK_ID INT UNSIGNED NOT NULL Foreign key Mã ID sách IMAGE_ID INT UNSIGNED NOT NULL Foreign key Mã ID hình ảnh Bảng 3.8 Bảng BOOKS_IMAGES Bảng BOOKS_PUBLISHERS Tên trường Kiểu liệu Ràng buộc Mô tả ID INT UNSIGNED Tăng tự động Primary key Mã ID quan hệ sách với nhà phát hành BOOK_ID INT UNSIGNED NOT NULL Foreign key Mã ID sách PUBLISHER_ID INT UNSIGNED NOT NULL Foreign key Mã ID nhà phát hành Bảng 3.9 Bảng BOOKS_PUBLISHERS 52 Bảng CATEGORIES Tên trường Kiểu liệu Ràng buộc Mô tả ID INT UNSIGNED Tăng tự động Primary key Mã ID thể loại sách NAME TEXT NOT NULL Tên thể loại DESCRIPTIONS TEXT NOT NULL Mô tả thể loại sách SLUG TEXT NOT NULL Mã thể loại Bảng 3.10 Bảng CATEGORIES Bảng IMAGES Tên trường Kiểu liệu Ràng buộc Mô tả ID INT UNSIGNED Tăng tự động Primary key Mã ID hình ảnh LINK TEXT NOT NULL Đường dẫn hình ảnh hệ thống SLUG TEXT NULL Mã hình ảnh ADDITIONAL_IN FO JSON NULL Thơng tin thêm hình ảnh FILENAME TEXT NOT NULL Tên hình ảnh TYPE TEXT NULL Loại hình ảnh UPDATED_BY INT UNSIGNED NULL Mã ID người đăng hình ảnh Bảng 3.11 Bảng IMAGES 53 Bảng PUBLISHERS Tên trường Kiểu liệu Ràng buộc Mô tả ID INT UNSIGNED Tăng tự động Primary key Mã ID nhà phát hành NAME TEXT NOT NULL Tên nhà phát hành SLUG TEXT NOT NULL Mã nhà phát hành ADDITIONAL_IN FO JSON NULL Thông tin thêm nhà phát hành Bảng 3.12 Bảng PUBLISHERS Bảng POSTS_IMAGES Tên trường Kiểu liệu Ràng buộc Mô tả ID INT UNSIGNED Tăng tự động Primary key Mã ID quan hệ đăng với hình ảnh POST_ID INT UNSIGNED NOT NULL Foreign key Mã ID đăng IMAGE_ID INT UNSIGNED NOT NULL Foreign key Mã ID hình ảnh Bảng 3.13 Bảng POSTS_IMAGES Bảng POSTS Tên trường Kiểu liệu Ràng buộc Mô tả INT UNSIGNED Tăng tự động Primary key Mã ID đăng TITLE TEXT NOT NULL Tiêu đề đăng DESCRIPTION TEXT NOT NULL Mô tả sách đăng LOCATION TEXT NOT NULL Địa trao đổi ID 54 STATUS ENUM('OPENED',' C LOSED','DELETED' ) NULL [OPENED] NOT NULL Trạng thái đăng ADDITIONAL_IN FO JSON NULL Thêm tin thêm đăng BOOK_ID INT UNSIGNED NOT NULL Foreign key Mã ID sách đăng USER_ID INT UNSIGNED NOT NULL Foreign key Mã ID người dùng đăng Bảng 3.14 Bảng POSTS Bảng RATING_BOOK Tên trường Kiểu liệu Ràng buộc Mô tả ID INT UNSIGNED Tăng tự động Primary key Mã ID đánh giá sách RATING_COUNT INT NULL Số lượng đánh giá TOTAL_SCORE FLOAT NULL Tổng điểm đánh giá FINAL_SCORE FLOAT NULL Tổng điểm cuối sau tính tốn BOOK_ID INT UNSIGNED NOT NULL Foreign key Mã ID sách Bảng 3.15 Bảng RATING_BOOK Bảng REVIEWS Tên trường Kiểu liệu Ràng buộc Mô tả ID INT UNSIGNED Tăng tự động Primary key Mã ID đánh giá sách REVIEW TEXT NULL Thông tin đánh giá SCORE INT NULL Điểm đánh giá 55 TAGS TEXT NULL Hashtag đánh giá BOOK_ID INT UNSIGNED NOT NULL Foreign key Mã ID sách USER_ID INT UNSIGNED NOT NULL Foreign key Mã ID người đăng Bảng 3.16 Bảng REVIEWS Bảng USERS_CATEGORIES Tên trường Kiểu liệu Ràng buộc Mô tả ID INT UNSIGNED Tăng tự động Primary key Mã ID quan hệ người dùng với thể loại yêu thích USER_ID INT UNSIGNED NOT NULL Foreign key Mã ID người dùng CATEGORY_ID INT UNSIGNED NOT NULL Foreign key Mã ID thể loại sách Bảng 3.17 Bảng USERS_CATEGORIES 3.1.5 Phân tích thiết kế kiến trúc ứng dụng di động - Mẫu thiết kế mà nhóm lựa chọn để phát triển ứng dụng di động Bloc Dưới kiến trúc dựa mẫu thiết kế Bloc: Hình 3.12 Thiết kế bloc 56 Giới thiệu - Bloc – viết tắt Bussiness Logic Component mẫu thiết kế nhằm tách logic xử lý khỏi giao diện, nhằm giúp nhà phát triển dễ dàng xử lý bảo trì Bên cạnh đó, Bloc cịn giúp quản lý trạng thái ứng dụng tốt (vì tách khỏi phần giao diện) - Kiến trúc ứng dụng chia làm ba tầng chính: giao diện, Bloc tầng liệu - Các thành phần kiến trúc ứng dụng dựa mẫu thiết kế Bloc STT Tầng Thành phần Mục đích Giao diện Các hình ứng Trình bày liệu nhận dụng thao tác, liệu đầu vào người dùng Bloc State Khai báo, định nghĩa trạng thái mà mẫu Bloc thiết kế Bloc dùng Bloc Event Khai báo, định nghĩa kiện mà mẫu thiết kế Bloc nhận vào Bloc Tiếp nhận event đến từ tầng giao diện Sau đó, Bloc làm nhiệm vụ xử lý logic Khi xử lý xong, Bloc trả cho tầng giao diện trạng thái ứng dụng Dữ liệu Data model Nhằm lọc lại liệu sau truy vấn, lấy từ thành phần Data provider 57 ... phiên TÓM TẮT KHÓA LUẬN Luận văn tốt nghiệp với đề tài ? ?Xây dựng ứng dụng trao đổi sách với NestJs framework – Build books exchange application with NestJs framework? ?? thực từ ngày 08/03/2021 đến ngày... cận với Flutter nhà phát triển ứng dụng trở nên dễ dàng hết 29 2.7 NestJs Hình 2.20 Logo Nestjs 2.7.1 Giới thiệu - NestJS framework để xây dựng ứng dụng phía máy chủ Node.js hiệu mở rộng xây dựng. .. HỒNG CƠNG MINH – 17520747 KHĨA LUẬN TỐT NGHIỆP XÂY DỰNG ỨNG DỤNG TRAO ĐỔI SÁCH VỚI NESTJS FRAMEWORK Build books exchange application with NestJs Framework KỸ SƯ NGÀNH KỸ THUẬT PHẦN MỀM GIẢNG VIÊN