TRƯỜNG ĐẠI HỌC THỦ DẦU MỘT VIỆN KỸ THUẬT – CÔNG NGHỆBÁO CÁO TIỂU LUẬN MÔN HỌC PHÁT TRIỂN ỨNG DỤNG DI ĐỘNG ĐỀ TÀI: XÂY DỰNG ỨNG DỤNG DI ĐỘNG QUẢN LÝ NẤU ĂN THÔNG... TRƯỜNG ĐẠI HỌC THỦ DẦU
TỔNG QUAN
Giới thiệu đề tài
- Xây dựng ứng dụng di động quản lý nấu ăn thông minh
Quản lý các món ăn
3 Các ràng buộc về mặt thiết kế
Giao diện hợp lý, rõ ràng, dễ sử dụng.
Màu sắc hài hòa, mềm mại, dễ nhìn.
Không có các chi tiết thừa, đơn giản tối đa.
Phạm vi sử dụng: Cộng đồng.
Đồi tượng sử dụng: mọi người
Công nghệ sử dụng
Java là ngôn ngữ lập trình được phát triển bởi Sun Microsystems vào năm 1995, nổi bật với khả năng dựa trên nguyên tắc hướng đối tượng Ngôn ngữ này kế thừa trực tiếp từ C/C++, giúp các lập trình viên dễ dàng chuyển đổi và phát triển các ứng dụng phức tạp Java cung cấp khả năng viết mã an toàn, khả năng chạy đa nền tảng và hiệu suất cao, trở thành lựa chọn hàng đầu trong xây dựng phần mềm doanh nghiệp và ứng dụng di động.
Vì sao ngôn ngữ này lại được đặt tên là Java?
Java là tên một hòn đảo nổi tiếng ở Indonesia, cùng tên với loại cà phê Peet và thức uống phổ biến của các kỹ sư Sun Ban đầu, ngôn ngữ này được đặt tên là "Oak" (có nghĩa là "Cây sồi" – 1991), nhưng do tên này đã được đăng ký nhãn hiệu bởi Sun, các nhà phát triển buộc phải đổi tên Chính vì lý do này, từ "Java" đã ra đời và trở thành tên gọi chính thức của ngôn ngữ lập trình Java, góp phần định vị thương hiệu và tạo dấu ấn đặc trưng cho ngôn ngữ này.
- Ngày nay Java được sử dụng với các mục đích sau:
+ Phát triển ứng dụng cho các thiết bị điện tử thông minh, các ứng dụng cho doanh nghiệp với quy mô lớn.
Tạo các trang web động với nội dung phong phú giúp nâng cao chức năng của máy chủ và tối ưu hóa trải nghiệm người dùng Phát triển nhiều loại ứng dụng đa dạng như quản lý cơ sở dữ liệu, hệ thống mạng, ứng dụng Internet, viễn thông và giải trí để đáp ứng nhu cầu ngày càng cao của thị trường số.
Ngôn ngữ lập trình Java nổi bật với tiêu chí hàng đầu là "Write Once, Run Anywhere" (Viết một lần, chạy mọi nơi), cho phép lập trình viên viết mã nguồn duy nhất và dễ dàng thực thi trên nhiều hệ điều hành khác nhau Điều này có nghĩa là mã Java được viết trên Windows có thể chạy trơn tru trên Linux và Mac OS mà không cần chỉnh sửa hay biên dịch lại Nhờ vào khả năng đa nền tảng này, Java mang lại sự linh hoạt và tiện lợi cho các dự án phần mềm, giúp tiết kiệm thời gian và công sức phát triển trên nhiều môi trường khác nhau.
- Với đặc điểm nổi bật đó, Java có những đặc điểm cơ bản như sau:
Java dễ sử dụng nhờ kế thừa từ C/C++, nhưng đã được Sun loại bỏ các tính năng phức tạp của C++ để làm cho ngôn ngữ này đơn giản và quen thuộc hơn cho người dùng.
+ Hướng đối tượng và quen thuộc.
+ Mạnh mẽ (thể hiện ở cơ chế tự động thu gom rác - Garbage Collection) và an toàn.
+ Kiến trúc trung lập, độc lập nền tảng và có tính khả chuyển (Portability). + Hiệu suất cao.
+ Máy ảo (biên dịch và thông dịch).
Ngôn ngữ Java hỗ trợ xây dựng ứng dụng đa nhiệm, cho phép nhiều quá trình hoạt động đồng thời để nâng cao hiệu suất và khả năng phản ứng của phần mềm Tính đa nhiệm giúp các nhà lập trình phát triển các ứng dụng tương tác tốt hơn và thực hiện các tác vụ theo thời gian thực một cách hiệu quả.
- Java Platform gồm có 3 thành phần chính:
+ Java Virtual Machine (Java VM) : Máy ảo Java.
+ Java Application Programming Interface (Java API).
+ Java Development Kit (JDK) gồm trình biên dịch, thông dịch, trợ giúp, soạn tài liệu và các thư viện chuẩn.
- Thông thường, các chương trình Java trải qua 5 giai đoạn chính :
+ Editor : Lập trình viên viết chương trình và được lưu vào máy tính với định dạng java.
+ Compiler : Biên dịch chương trình thành bytecodes (định dạng class) - nhờ bước trung gian này mà Java được viết 1 lần và chạy trên các hệ điều hành khác nhau.
Trong quá trình chạy ứng dụng Java, Class Loader chịu trách nhiệm đọc các tập tin class chứa mã bytecodes và lưu chúng vào bộ nhớ để chuẩn bị thực thi Sau đó, Bytecode Verifier kiểm tra tính hợp lệ của mã bytecodes này, đảm bảo không vi phạm các quy tắc bảo mật của Java, giúp duy trì tính an toàn và ổn định của hệ thống.
+ Intepreter : Biên dịch bytecodes thành mã máy để máy tính có thể hiểu được và sau đó thực thi chương trình.
Để phát triển ứng dụng mobile chạy trên hệ điều hành Android, bạn cần cài đặt Android Studio trên máy tính của mình Bài viết này sẽ hướng dẫn chi tiết cách cài đặt và sử dụng Android Studio để tạo ứng dụng đầu tiên mang tên Hello World Nội dung tập trung vào hệ điều hành Windows, vì vậy bạn cần một máy tính chạy Windows để thực hiện các bước này.
Android Studio là phần mềm phát triển ứng dụng Android tích hợp nhiều công cụ như code editor, debugger, công cụ tối ưu hiệu suất và hệ thống build/deploy Nó bao gồm trình giả lập môi trường thiết bị giúp lập trình viên dễ dàng thử nghiệm ứng dụng trên máy tính Android Studio hỗ trợ phát triển các ứng dụng từ đơn giản đến phức tạp một cách nhanh chóng và hiệu quả.
Việc xây dựng một ứng dụng mobile hoặc tablet bao gồm nhiều công đoạn phức tạp, từ viết code trên máy tính cá nhân đến quá trình build và cài đặt thử trên thiết bị Đây là quá trình tiêu tốn nhiều thời gian và công sức, đặc biệt khi phải lặp lại mỗi khi thay đổi mã nguồn Android Studio được phát triển nhằm tối ưu hóa quy trình phát triển ứng dụng di động, giúp các nhà phát triển giảm thiểu thao tác thủ công và tăng hiệu quả làm việc.
Android Studio tất cả các công đoạn trên được thực hiện trên cùng một máy tính và các quy trình được tinh gọn tới mức tối giản nhất.
PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG
Phân tích
Phần mềm quản lý nấu ăn thông minh giúp người dùng dễ dàng đăng nhập và đăng ký tài khoản để quản lý các món ăn hiệu quả Nền tảng này cung cấp các tính năng như quản lý danh sách món ăn, thêm, sửa, xóa và xem chi tiết thông tin các món ăn, hỗ trợ người dùng tổ chức bếp nấu một cách dễ dàng và tiện lợi Các chức năng này được minh họa rõ ràng qua hình ảnh bên dưới, giúp người dùng dễ dàng thao tác và sử dụng phần mềm một cách linh hoạt.
Hình 2: Những chức năng cơ bản của ứng dụng
Thiết kế hệ thống
Hình 3: Sơ đồ Use Case
Tên Use Case Đăng nhập
Mô tả: Dùng đề đăng nhập vào hệ thống
1 Tác nhân khởi động chương trình.
2 Hệ thống hiển thị form đăng nhập.
3 Tác nhân nhập User name và Password.
4 Hệ thống kiểm tra thông tin tài khoản.
5 Hệ thống đăng nhập vào màn hình chính.
1.1 Hệ thống kiểm tra không khớp thông tin tài khoản. 1.2 Hệ thống thông báo đăng nhập thất bại.
1.3 Quay lại bước 2 dòng sự kiện chính.
Yêu cầu đặc biệt Không
Trạng thái hệ thống trước khi Use-Case được sử dụng:
- Tác nhân phải có sẵn tài khoản trên hệ thống
Trạng thái hệ thống khi Use-Case được sử dụng:
- Thành công: tác nhân đăng nhập vào đươc hệ thống.
- Thất bại: hệ thống báo lỗi và quay về trang đăng nhập.
Bảng 1: Đặc tả Use Case Đăng nhập
2.2 Use Case Thêm món ăn
Tên Use Case Thêm món ăn
Mô tả: Dùng để thêm món ăn vào hệ thống
1 Người ung đăng nhập vào hệ thống
2 Người ung chọn loại món ăn cần thêm
3 Người dùng chọn vào ImgButton thêm (dấu cộng)
4 Nhập các thông tin cần thiết và bấm lưu.
5 Hệ thống kết nối đến Database
6 Database cập nhật lại dữ liệu
Yêu cầu đặc biệt Không
Trạng thái hệ thống trước khi Use-Case được sử dụng:
- Tác nhân phải có sẵn tài khoản trên hệ thống
Trạng thái hệ thống khi Use-Case được sử dụng:
- Thành công: món ăn được lưu vào hệ thống.
Bảng 2: Đặc tả Use Case Thêm món ăn
2.3 Use Case Sửa món ăn
Tên Use Case Sửa món ăn
Mô tả: Dùng để sửa món ăn trên hệ thống
1 Người ung đăng nhập vào hệ thống
2 Người ung chọn loại món ăn cần sửa
3 Người ung chọn món ăn muốn sửa
4 Nhập các thông tin cần chỉnh sửa và bấm lưu.
5 Hệ thống kết nối đến Database
6 Database cập nhật lại dữ liệu
Yêu cầu đặc biệt Không
Trạng thái hệ thống trước khi Use-Case được sử dụng:
- Tác nhân phải có sẵn tài khoản trên hệ thống
Trạng thái hệ thống khi Use-Case được sử dụng:
- Thành công: món ăn được lưu vào hệ thống.
Bảng 3: Đặc tả Use Case Sửa món ăn
2.4 Use Case Xóa món ăn
Tên Use Case Xóa món ăn
Mô tả: Dùng để xóa món ăn trên hệ thống
1 Người ung đăng nhập vào hệ thống
2 Người ung chọn loại món ăn cần xóa
3 Click button “Xóa món ăn”
4 Hệ thống kết nối đến Database
5 Database cập nhật lại dữ liệu
Yêu cầu đặc biệt Không
Trạng thái hệ thống trước khi Use-Case được sử dụng:
- Tác nhân phải có sẵn tài khoản trên hệ thống
Trạng thái hệ thống khi Use-Case được sử dụng:
- Thành công: xóa món ăn thành công.
Bảng 4: Đặc tả Use Case Xóa món ăn
2.5 Use Case Xem thông tin
Tên Use Case Xem thông tin
Mô tả: Dùng để xem thông tin món ăn trên hệ thống
1 Người ung đăng nhập vào hệ thống
2 Người ung chọn loại món ăn cần xem
3 Thông tin món ăn sẽ được hiển thị.
Yêu cầu đặc biệt Không
Trạng thái hệ thống trước khi Use-Case được sử dụng:
- Tác nhân phải có sẵn tài khoản trên hệ thống
Trạng thái hệ thống khi Use-Case được sử dụng:
Bảng 5: Đặc tả Use Case xem thông tin
4 Biểu đồ hoạt động a Chức năng đăng nhập b Chức năng quản lý món ăn
Hình 5: Biểu đồ hoạt động chức năng quản lý món ăn
5 Biểu đồ tuần tự a Biểu đồ tuần tự chức năng đăng nhập b Biểu đồ tuần tự chức năng quản lý món ăn
Hình 7: Biểu đồ tuần tự chức năng quản lý món ăn
6 Thiết kế cơ sở dữ liệu
- Cơ sở dữ liệu của đề tài được thiết kế gồm 6 bảng. a Bảng USER
Bảng 6: Bảng User b Bảng CANH c Bảng CHAY d Bảng LUOC e Bảng MAN f Bảng XAO
Bảng 9: Bảng Luoc Bảng 10: Bảng Man
CÀI ĐẶT CHƯƠNG TRÌNH
Giao diện đăng nhập
- Người dùng cần nhập tài khoản và mật khẩu để đăng nhập vào hệ thống
Hình 8: Giao diện đăng nhập
Giao diện đăng ký
- Nếu chưa có tài khoản, người dùng có thể đăng ký tài khoản ở trang này
Hình 9: Giao diện đăng ký
Giao diện trang chủ
- Sau khi đăng nhập thành công sẽ đưa người dùng đến trang chính của ứng dụng.
Hình 10: Giao diện trang chủ
Giao diện thêm món ăn
- Nhập các thông tin cần thiết để thêm món ăn của bạn.
Hình 11: Giao diện thêm món ăn
Giao diện xóa món ăn
- Khi nhấn giữ vào một món ăn có thể tùy chọn xóa món ăn
Hình 12: Giao diện xóa món ăn
Giao diện sửa món ăn
- Nhập các thông tin cần chỉnh sửa của món ăn đã chọn
Hình 13: Giao diện sửa món ăn
7 Giao diện xem thông tin món ăn
Hình 14: Giao diện xem thông tin món ăn
CHƯƠNG 4: ĐÁNH GIÁ KẾT QUẢ VÀ HƯỚNG PHÁT TRIỂN
1 Đánh giá kết quả a Chức năng đã làm được
- Phân tích và thiết kế hệ thống thông tin quản lý món ăn
- Tạo cơ sở dữ liệu quản lý
- Đề tài phát triển tương đối hoàn thiện với những chức năng như : đăng nhập, quản lý thông tin các món ăn.
- Đảm bảo việc đăng nhập thành công thì mới có thể vào được ứng dụng. b Chức năng chưa làm được
- Chưa có chức năng quản lý thông tin người dùng.
Do nhiều yếu tố ràng buộc, nguyên nhân khách quan và chủ quan, cùng hạn chế về mặt thời gian, đề tài vẫn còn tồn tại một số thiếu sót và chức năng chưa được hoàn thiện.
- Chưa có chức năng quên mật khẩu cho người dùng.
Dựa trên các tài liệu tham khảo và hướng dẫn từ giảng viên, tôi đã xác định các dự định và phương hướng phát triển cho đề tài trong tương lai Các bước tiếp theo sẽ tập trung vào việc mở rộng phạm vi nghiên cứu, áp dụng các phương pháp mới để nâng cao hiệu quả, đồng thời khai thác các nguồn dữ liệu đa dạng để cung cấp cái nhìn toàn diện hơn về đề tài Tôi hướng đến việc hoàn thiện nội dung và mở rộng các ứng dụng thực tiễn, góp phần nâng cao giá trị của công trình nghiên cứu này trong lĩnh vực liên quan.
+ Thêm video hướng dẫn cho từng món ăn trên hệ thống.