Xây dựng app xem thời khóa biểu

33 0 0
Xây dựng app xem thời khóa biểu

Đ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

Lập trình Android Bài toán sắp xếp Thời khóa biểu luôn là một bài toán khó, mang tính khoa học đồng thời tính thực tiễn cũng rất cao. Bài toán đặt ra yêu cầu xây dựng một thời khoá biểu nhằm mục đích cung cấp thông tin giảng dạy cho các giảng viên và sinh viên. Thời khóa biểu được xây dựng phải đáp ứng được nhu cầu dạy và học một cách nhanh chóng, thuận tiện và chính xác.

HỌC VIỆN KỸ THUẬT MẬT MÃ KHOA CÔNG NGHỆ THÔNG TIN ĐỒ ÁN MÔN HỌC LẬP TRÌNH ANDROID CƠ BẢN Đề tài: XÂY DỰNG APP XEM THỜI KHÓA BIỂU Giảng viên hướng dẫn : ThS Sinh viên thực hiện : Nhóm 10 Hà Nội, 05-2023 LỜI CAM ĐOAN Tôi là Nguyễn Văn Duy, mã số sinh viên CT030211, lớp CT3B Người hướng dẫn là ThS Lê Bá Cường Tôi xin cam đoan toàn bộ nội dung được trình bày trong đồ án “Xây dựng app xem thời khóa biểu” là kết quả quá trình tìm hiểu và nghiên cứu của nhóm tôi Các dữ liệu được nêu trong đồ án là hoàn toàn trung thực, phản ánh đúng kết quả đo đạc thực tế Mọi thông tin trích dẫn đều tuân thủ các quy định về sở hữu trí tuệ; các tài liệu tham khảo được liệt kê rõ ràng Chúng tôi xin chịu hoàn toàn trách nhiệm với những nội dung được viết trong đồ án này Hà Nội, ngày 11 tháng 5 năm 2022 Người cam đoan Nhóm thực hiện đề tài MỤC LỤC DANH MỤC HÌNH VẼ iii DANH MỤC BẢNG BIỂU iv LỜI MỞ ĐẦU iv CHƯƠNG 1 CƠ SỞ LÝ THUYẾT 1 1.1 Tổng quan về Androi 1 1.1.1 Giới thiệu về hệ điều hành Androi 1 1.1.2 Lịch sử của hệ điều hành Android 2 1.1.3 Sự đón nhận của người dùng đối với Android .2 1.1.4 Kiến trúc của Android 2 1.2 Tổng quan về React Native 2 1.2.1 Giới thiệu về React Native .2 1.2.2 Ưu điểm của React Native 3 1.2.3 Nhược điểm của React Native 6 1.2.4 Kết luận 6 1.3 Tổng quan về Node Js 6 1.3.1 Giới thiệu về Node Js .6 1.3.2 Các tính năng của Node Js .8 1.3.3 Ứng dụng của Node JS 8 1.3.4 Một số ưu, nhược điểm của NodeJS 9 1.3.5 Kết luận 10 1.4 Giới thiệu MySQL .10 1.4.1 MySQL 10 1.4.2 Đặc điểm MySQL 11 1.4.3 Lý do sử dụng MySQL 12 CHƯƠNG 2 KHẢO SÁT, PHÂN TÍCH THIẾT KẾ HỆ THỐNG 14 2.1 Khảo sát, phân tích bài toán .14 2.1.1 Phân tích bài toán 14 2.1.2 Khảo sát về một số app quản lý thời gian 15 2.1.3 Tổng quan về hệ thống 18 2.1.4 Nguyên lý hoạt động của hệ thống .18 2.2 Thiết kế các chức năng .18 i 2.2.1 Chức năng app xem thời khóa biểu 18 2.2.2 Phân hệ người dùng 19 2.3 Biểu đồ UseCase và đặc tả 19 2.3.1 Biểu đồ UseCase tổng quát 19 2.4 Thiết kế database 20 2.4.1 Xây dựng database .20 2.4.1 Thiết kế cơ sở dữ liệu tổng quát 21 2.4.2 Thiết kế cơ sở dữ liệu chi tiết .21 2.5 Thiết kế giao diện 24 CHƯƠNG 3 THỰC NGHIỆM 25 KẾT LUẬN 25 TÀI LIỆU THAM KHẢO 26 ii DANH MỤC HÌNH VẼ iii DANH MỤC BẢNG BIỂU LỜI MỞ ĐẦU Ngày này, song song với sự phát triển của khoa học kĩ thuật, công nghệ thông tin cũng phát triển và giữ vai trò quan trọng trong cuộc sống của chúng ta, ngành công nghệ thông tin đã đạt được những kết quả cao, việc phát triển và ứng dụng công nghệ đã có bước chuyển biến đáng kể Tin học đã thâm nhập xâu trong tất cả các lĩnh vực của xã hội và đặc biệt với nhiều ứng dụng to lớn trong các hệ thống quản lý của các công ty, nhà trường, ngân hàng,… bởi tính năng nhanh gọn và chính xác Đặc biệt trong thời buổi dịch bệnh Covid -19 như hiện nay , các trường học phải tạm dừng thay bằng đó chuyển sang hình thức học online Sở dĩ nó được thịnh hành hơn là do khả năng thích ứng nhanh cũng như thời gian , chi phí được tiết kiệm một cách đáng kể Trong các Website học online thì website học lập trình đang được quan tâm nhất hiện nay, rất nhiều những website học online nổi tiếng hoàn toàn miễn phí cho tất cả mọi người làm quen, tiếp thu và học hỏi những kiến thức quý báu của ngành lập trình Đồng thời tạo nên một cộng động giúp đỡ nhau trong học tập , làm việc của ngành lập trình nói riêng và toàn thể các ngành nghề nói chung Từ những khảo sát và hiểu biết ban đầu, chúng em đã quyết định tìm hiểu đề tài tìm hiểu Reac Js và Node Js nghiên cứu phát triển website học lập trình online Với sự hướng dẫn và chỉ bảo tận tình của thầy giáo ThS Lê Bá Cường cùng với sự cố gắng của cả nhóm, chúng em đã cố gắng hoàn thiện đề tài Chúng em xin chân thành cảm ơn thầy giáo đã giúp chúng em hoàn thiện đề tài này iv CHƯƠNG 1 CƠ SỞ LÝ THUYẾT 1.1 Tổng quan về Androi Như chúng ta biết, hiện tại đã có hơn nửa nhân loại sử dụng máy di động để thoại và giao tiếp qua các mạng không dây Con số 3tỉ người này sẽ còn tăng lên và máy di động càng ngày càng "thông minh" với nhiều chức năng và dịch vụ rất hấp dẫn, cho nên thị trường máy di động thông minh sẽ vượt xa máy vi tính trong một tương lai rất gần Vì thế việc lập trình trên thiết bị di động ngày càng phổ biến và phát triển rất mạnh mẽ Từ nền tảng mã nguồn mở, Google đã cho ra mắt Android chạy trên các thiết bị di động Android có rất nhiều công cụ và dụng cụ miễn phí để nghiên cứu và phát triển phần mềm trên nền tảng của nó Tài liệu này sẽ giúp chúng ta tìm hiểu về Android và cách viết một ứng dụng trên nền tảng này 1.1.1 Giới thiệu về hệ điều hành Androi Android là một hệ điều hành có mã nguồn mở dựa trên nền tảng Linux được thiết kế dành riêng cho các thiết bị di động có màn hình cảm ứng như điện thoại thông minh và máy tính bảng Ban đầu, hệ điều này này được phát triển bởi công ty Android, với sự hỗ trợ tài chính từ Google, sau đó chính Google đã mua lại công ty này và tiếp tục phát triển Android trở thành một nền tảng hiệu quả hơn - Android có khả năng tuỳ biến cao, cho phép tùy ý chỉnh sửa mà không có sự can thiệp hay ràng buộc pháp lý từ Google - Android xuất hiện trên rất nhiều mẫu thiết bị từ phân khúc bình dân đến cao cấp, mang đến nhiều lựa chọn cho người dụng - Kho ứng dụng Google Play Store đồ sộ, nhiều ứng hữu ích - Giao diện thân thiện, dễ sử dụng - Do tính chất mã nguồn mở nên Android luôn có nguy cơ tiềm ẩn cao bị dính virus hoặc các phần mềm độc hại - Android có sự phân mảnh quá lớn do có mặt trên rất nhiều thiết bị khác nhau, gây nên một số khó khăn cho các nhà phát triển khi xây dựng ứng dụng mới 1 - Không hỗ trợ cập nhật cho tất cả mọi thiết bị, do đó trong nhiều trường hợp, nếu muốn trải nghiệm phiên bản Android mới, người dùng phải mua thiết bị mới Hình 1.1: Hệ điều hành Android 1.1.2 Lịch sử của hệ điều hành Android 1.1.3 Sự đón nhận của người dùng đối với Android 1.1.4 Kiến trúc của Android 1.2 Tổng quan về React Native 1.2.1 Giới thiệu về React Native React Native là một framework được tạo bởi Facebook, cho phép các lập trình viên sử dụng JavaScript để làm mobile apps trên cả Android và iOS với có trải nghiệm và hiệu năng như native React Native vượt trội ở chỗ chỉ cần viết một lần là có thể build ứng dụng cho cả iOS lẫn Android 2 Hình 1.2 React Native Việc này giúp chúng ta có thể tiết kiệm được thời gian, công sức, tiền bạc Giúp tốc độ ra sản phẩm cũng như cập nhật ứng dụng nhanh chóng mặt Có thể nói React Native là một cross-platform để xây dựng một ứng dụng di động hiệu quả Nó hoàn toàn khác với khái niệm “hybrid app” : 1.2.2 Ưu điểm của React Native React Native cùng với Flutter đang là xu hướng lập trình di động hiện nay bởi tính đa nền tảng cũng như tiết kiệm thời gian triển khai dự án Sau đây là những lợi ích mà nó đem lại cho việc triển khai dự án có thể trả lời cho câu hỏi có nên dùng React Native không ? 1.2.2.1 Thời gian học ngắn hơn Một lý do lập trình mobile app rất khó và tốn thời gian là vì thực tế cần tìm hiểu 2 hệ sinh thái hoàn toàn khác biệt Nếu bạn muốn lập trình app iOS, ta phải học Swift hoặc Objective-C và Cocoa Pods Nếu muốn lập trình app Android, bạn cần học Java hoặc Kotlin và Android SDK 3  MySQL tương thích tốt với môi trường PHP, giúp hệ thống hoạt động mạnh mẽ Bạn có thể viết hoặc chỉnh sửa code MySQL trên các IDE dành cho PHP, một số công cụ hỗ trợ 1.4.3 Lý do sử dụng MySQL MySQL ngày càng hoàn thiện và mang đến nhiều lợi ích cho người dùng Ra mắt người dùng hoàn toàn miễn phí, hệ quản trị cơ sở dữ liệu MySQL mang đến rất nhiều những lợi ích thiết thực, được ứng dụng trong nhiều dự án của các công ty công nghệ, một trong số đó có thể kể đến những công ty chuyên lập trình như MonaMedia, Misa,… cùng chúng tôi tìm hiểu những lợi ích thiết thực của mySQL ngay dưới đây: Hiệu năng sử dụng cao :Hầu hết, hệ quản trị cơ sở dữ liệu MySQL đang được các nhà phát triển rất ưa chuộng trong quá trình phát triển ứng dụng Và họ đánh giá rất cao ở hiệu năng sử dụng của MySQL Với kiến trúc storage-engine, MySQL đặc trưng cho các ứng dụng chuyên biệt, đặc biệt là đối với những trang web có dung lượng lớn, phục vụ hàng triệu khách hàng Hoặc đối với những hệ thống xử lý giao dịch tốc độ cao thì MySQL đều cùng có thể đáp ứng được những khả năng xử lý khắt khe của mọi hệ thống Đặc biệt, với những tiện ích tải tốc độ cao, cơ chế xử lý nâng cao cùng bộ nhớ cache MySQL đưa ra tất cả những tính năng cần có, đây là giải pháp hoàn hảo nhất ngay cả đối với những hệ thống doanh nghiệp khó tính nhất hiện nay MySQL hỗ trợ giao dịch mạnh mẽ: Hệ quản trị cơ sở dữ liệu MySQL không những mang lại hiệu năng sử dụng cao Mà nó còn đưa ra một trong số những engine giao dịch cơ sở dữ liệu tốt nhất trên thị trường hiện nay Tính năng này bao gồm: Khóa mức dòng không hạn chế; hỗ trợ giao dịch ACID hoàn thiện; khả năng giao dịch được phân loại và hỗ trợ giao dịch đa dạng mà người đọc không cản trở cho người viết và ngược lại Với MySQL, dữ liệu sẽ được đảm bảo trong suốt quá trình server có hiệu lực Các mức giao dịch độc lập sẽ được chuyên môn hóa, nếu phát hiện có lỗi khóa chết ngay tức thì Tốc độ rất nhanh :hệ quản trị mysql có tốc độ cao.Tốc độ xử lý dữ liệu của mySQL rất nhanh Đánh giá chung của các nhà phát triển, tất cả họ đều cho rằng hệ quản trị cơ sở dữ liệu MySQL là cơ sở dữ liệu nhanh nhất Đây là nơi để cho các 12 website có thể trao đổi thường xuyên các dữ liệu bởi nó có engine xử lý tốc độ cao Khả năng chèn dữ liệu cực nhanh và hỗ trợ mạnh mẽ các chức năng chuyên dụng cho trang web Các tính năng này cũng được sử dụng cho môi trường lưu trữ dữ liệu mà hệ quản trị này tăng cường đến hàng terabyte cho các server đơn Ngoài ra còn có những tính năng khác như: chỉ số băm, bảng nhớ chính, bảng lưu trữ và cây B được gói lại để giúp giảm các yêu cầu lưu trữ tối đa đến 80% Với tốc độ nhanh, thật không thể phủ nhận hệ quản trị cơ sở dữ liệu MySQL là sự lựa chọn tốt nhất cho cả ứng dụng web cũng như các ứng dụng của doanh nghiệp ngày nay Dễ dàng sử dụng :MySQL ngoài được biết đến với tốc độ khá cao, ổn định thì nó thực sự là một hệ thống cơ sở dữ liệu rất đơn giản, rất dễ sử dụng Ít phức tạp khi cài đặt và quản trị hơn các hệ thống lớn Đặc biệt nó có thể hoạt động trên tất cả các hệ điều hành Hỗ trợ ngôn ngữ truy vấn: MySQL hệ quản trị cơ sở dữ liệu là ngôn ngữ của sự lựa chọn cho tất cả các hệ thống cơ sở dữ liệu hiện đại Người dùng hoàn toàn có thể truy cập MySQL bằng cách sử dụng các ứng dụng mà hỗ trợ ODBC (một giao thức giao tiếp cơ sở dữ liệu được phát triển bởi Microsoft) Nhiều client có thể truy cập đến server trong cùng một thời gian Đặc biệt các client có thể sử dụng nhiều cơ sở dữ liệu một cách đồng thời Bạn cũng có thể truy cập MySQL tương tác với khi sử dụng một vài giao diện để đưa vào các truy vấn và xem kết quả như: các dòng yêu cầu của khách hàng, các trình duyệt web…  Tính kết nối và bảo mật cao  Tính linh động cao  Mã nguồn mở tự do và hỗ trợ 24/7  Chi phí sở hữu thấp nhất Như vậy đủ thấy MySQL là một hệ quản trị cơ sở dữ liệu đầy đủ đảm bảo các tính năng lại có nhiều ưu điểm Lựa chọn sử dụng MySQL trong đề tài là hoàn toàn đúng đắn 13

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

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan