1. Trang chủ
  2. » Giáo Dục - Đào Tạo

BÁO CÁO BÀI TẬP LỚN LẬP TRÌNH THIẾT BỊ DI ĐỘNG Đề tài App giao đồ ăn

22 2 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Trang 1

TRƯỜNG ĐẠI HỌC GIAO THÔNG VẬN TẢI

KHOA CÔNG NGHỆ THÔNG TIN

-o0o -BÁO CÁO BÀI TẬP LỚN

LẬP TRÌNH THIẾT BỊ DI ĐỘNG

Đề tài: App giao đồ ăn

Giảng viên hướng dẫn: Thầy Lại Mạnh Dũng

Trang 2

Hà Nội, Tháng 4 Năm 2024

CHƯƠNG I : TỔNG QUAN VỀ ĐỀ TÀI 1 Mô tả về đề tài

1.1 Tóm tắt đề tài

Đề tài chúng em thực hiện là ứng dụng mua bán thực phẩm trên hệ điều hành Android và sử dụng ngôn ngữ Java dựa trên kiến thức đã được học trên lớp và tham khảo các nguồn kiến thức khác trên Internet.

1.2 Lý do chọn đề tài

Ngày nay việc mua bán trực tuyến trên điện thoại trở nên phổ biến, dựa vào nhu cầu đó chúng em muốn trải nghiệm thiết kế một ứng dụng mua bán trực tuyến là ứng dụng mua bán thực phẩm.

1.3 Mục tiêu của đề tài

Mục tiêu của ứng dụng mua bán thực phẩm này để vừa luyện tập kĩ năng cơ bản cũng như nâng cao trong thiết kế phát triển ứng dụng Android Ứng dụng dùng Android Studio vẽ giao diện và dùng SQLiteOpenHelper làm CSDL.

Trang 3

1.2 Chi tiết các use-case

2 Cơ sở dữ liệu

3 Giao diện thiết kế

3.1 Giao diện thiết kế phần đăng ký, đăng nhập

Trang 4

3.2 Giao diện thiết kế khi vào bên trong ứng dụng

Trang 5

CHƯƠNG III : GIAO DIỆN VÀ CHỨC NĂNG CỦA HỆ THỐNG

1 Cấu trúc dự án

1.1 Module dự án Android

Bên Android, cấu trúc dự án sẽ chia làm các thành phần là model, repository,

serviceapi, utils, view Mỗi một package sẽ chứa code để làm việc với từng thành phần tương ứng.

Trang 6

Trong package model, là nơi chứa các domain hay các thực thể để cho việc trao

đổi dữ liệu trong suốt cả chương trình Android.

Trong package repository và serviceapi là nơi

thành phần để giao tiếp với bên Spring BackEnd Đây là phần MODEL ở trong kiến trúc MVVM.

Trong package view là nơi để làm việc với các activity và các fragment, đây là nơi

chứa nhiều code và nghiệp vụ nhất khi làm việc với Android, ở trong kiến trúc MVVM đây là phần VIEW và VIEW MODEL Hình sau sẽ giới thiệu đôi chút.

package utils chứa các thành phần static để sử dụng trong suốt quá trình ứng dụng chạy

Trang 7

1.2.Module dự án Spring (do file quá nhiều nên sẽ show các thư mục project)

Bên phía BackEnd, các module được chia thành các package như bootstrap, configuration, controller, dto, exception, mapper, model, repository, service, util Trong đó các package như controller sẽ là đại diện cho tầng presentation (trình diễn) , những class trong package này sẽ có nhiệm vụ cung cấp các api để client có thể giao tiếp với phía BackEnd, package service và repository đại diện cho tầng business cũng như tầng persistence, đây là nơi chứa những class giải quyết các logic nghiệp vụ và logic để giao tiếp với phía DB, Database em sử dụng là PostgresSql.

package auth chứa các activities và fragments liên quan đến đăng nhập, đăng ký, …

package love chứa các activities và fragments liên quan đến trang loveplaylist, tạo một love playlist, …

package musicplayer chứa các activities và fragments liên quan đến trình phát nhạc, và service để phát nhạc trong khi ứng dụng chạy

Trang 8

Package bootstrap có class Bootstrap để khởi chạy các thành phần cần thiết và xử lý các dữ liệu cần thiết khi server khởi chạy, em dùng class này để khởi tạo lời gọi đến Song API rồi sau đó xử lý dữ liệu nhét vào album rồi lưu vào DB, một dạng initialize dữ liệu.

Package dto chứa các class DTO (Data Transfer Object) để trao đổi dữ liệu, exception chứa các lớp xử lý ngoại lệ tự định nghĩa, mapper là nơi chứa các interface để thực hiện cho việc chuyển đổi giữa DTO và Model gốc Em các annotations của MapStruct để trong quá trình package thành jar sẽ tự sinh ra code triển khai các interface này cho việc chuyển đổi.

Cuối cùng là các package còn lại

package configuration có chứa class để cấu hình các Spring Bean cần thiết để sử dụng trong khi code…

package model chứa các logic miền hay domain logic chính của hệ thống backend

package repository, service có tác dụng để trao đổi với phía database, các service sẽ sử dụng thành phần phụ thuộc (DI) từ repository để các logic nghiệp vụ có thể giao tiếp với DB

Trang 9

Ngoài ra em còn viết một số unit test và integration test phía backend để kiểm thử xem API hoạt động oke chưa hay kiểm thử xem repository lấy dữ liệu, lưu dữ liệu chuẩn chưa.

Trang 10

2.2 Giao diện trang Home, Playlist, LovePlaylist, User

Giao diện trang Home

Giao diện trang Playlist (chứa danh sách các bài hát)

Giao diện trang LovePlaylist

Trang 11

Giao diện trang User

2.3 Giao diện trang Rank (chưa có ý tưởng triển khai)

2.4 Giao diện trang Album khi người dùng click vào Album ở Home

Trang 12

2.5 Giao diện trang Playlist khi người dùng click vào một Playlist

2.6 Giao diện thêm mới một bài hát vào Playlist

Trang 13

2.7 Giao diện trình phát nhạc

3 Chức năng

3.1 Giao diện và chức năng đăng nhập

Giao diện bắt đầu sau intro là giao diện đăng nhập của ứng

3.2 Giao diện và chức năng đăng ký

3.3 Giao diện và chức năng quên mật khẩu

Trang 14

3.4 Giao diện và chức năng trong trang Home

Trang 15

3.5 Giao diện và chức năng của trang …

3.6 Giao diện và chức năng của trang ….

3.7 Giao diện và chức năng trang danh sách sản phẩm

3.8 Giao diện và chức năng trang người dùng

Trang 16

3.9 Giao diện và chức năng

Trang 17

CHƯƠNG IV: KẾT LUẬN

KẾT LUẬN

BẢNG PHÂN CÔNG CÔNG VIỆC

Trang 18

Thao tác trên Intelij IDEA (để chạy backend local)

Trang 19

o Sau khi thầy đã cài JDK 17 và tạo database trên PostgresSQL, mở ứng dụng Spring Boot lên bằng Intelij IDEA

file cấu hình cho ứng dụng spring

Đây là cấu hình mặc định cho remote database, chúng ta cần thay đổi để chạy trên local database đã cài từ bước trước.

Trang 20

o Sau đó, vào file application.properties cấu hình lại một chút để có thể giao tiếp với database local, mặc định là đang kết nối đến database host trên web Đây là nội dung cần thay thế

o oSau đó chạy ứng dụng lên bằng cách cách nhấn nút hình tam giác trong file SoulMusicBEServiceApplication.java

Trang 21

o Vậy là xong phần chạy backend local, em dùng Spring Data JPA nên khi chạy app sẽ tự chạy code sinh ra các bảng và dữ liệu khởi tạo sẽ được khởi tạo từ file Bootstrap.java trong package bootstrap.

Thao tác trên Android (để chạy android)

o Trong package serviceapi, để có thể chạy local cần thay đổi đường dẫn gọi đến API của backend đang chạy local.

o Sau đó chạy ứng dụng Android lên và đăng ký tài khoản và trải nghiệm thôi Lưu ý là phải có kết nối wifi để đăng ký.

Thay đổi từ Constants.FULL sang Constants.EMULATOR_FULL_PATH

Ngày đăng: 16/04/2024, 03:21

Xem thêm:

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w