LỜI CẢM ƠN
Chúng em xin cảm ơn thầy giáo ThS. Trần Hoài Hạnh đã hết lòng giúp đỡ chúng em thực hiền đề tài tiểu luận này. Trong lúc thực hiện tiểu luận, chúng em không tránh khỏi những sai sót nhưng các thầy đã luôn cố gắng để hoàn thiện chúng em hơn.
Qua thực hiện đề tài này, chúng em đã biết các viết một ứng dụng Android cơ bản. Vì lẽ đó, chúng em sẽ tiếp tục phát huy, tự tin viết những ứng dụng Android trong tương lai hơn. Chúng em xin chân thành cảm ơn.
Nhóm thực hiện
LỜI NÓI ĐẦU
Những ứng dụng Android lớn ngày nay đang được sinh ra mỗi lúc một nhiều. Hiện nay, việc học online đang được các trường học triển khai thực hiện rộng rãi. Từ đó, chúng em đã chọn đề tài "Xây dựng ứng dụng hướng dẫn học chương 1,2,3 môn Lập trình trên thiết bị di động; để giúp các bạn sinh viên học tập bộ môn này một cách hiệu quả, dù ở trường hay không.
Về mặt lý thuyết, các phần sẽ được trình bày gồm:
Chương 1: Tổng quan về đề tài
Chương 2: Cơ sở lý thuyết
Chương 3: Xây dựng ứng dụng hướng dẫn học chương 1,2,3 môn Lập trình trên thiết bị di động
Chương 4: Kết luận, hướng phát triển.
Về mặt thực tiễn, khi thực hiện, đề tài giúp cho chúng em có thêm kiến thức về lập trình Android, hiểu được cách thức vận hành của một ứng dụng di động cơ bản là như thế nào. Điều này góp phần nâng cao kiến thức của chúng em khi viết một ứng dụng di động tiếp theo.
Mặc dù, chúng em đã cố gắng trong quá trình thực hiện nhưng chắc chắn sẽ còn một vài thiếu sót và hạn chế. Rất mong được sự đóng góp ý kiến quý báu của quý Thầy Cô giáo và các bạn.
PHÂN CÔNG CÔNG VIỆC
MSSV
|
Họ và tên
|
Công việc
|
|
|
Nội dung chương 3 (View-ViewGroup và chức năng: giới thiệu ứng dụng, đặt câu hỏi thắc mắc)
|
|
|
Nội dung chương 1, soạn file word và chức năng: xem bài giảng, xem tiến trình học.
|
|
|
Nội dung chương 3 (Layout) và chức năng: Hiển thị danh sách bài học, hiển thị danh sách code mẫu.
|
|
|
Nội dung chương 2, soạn file PowerPoint và chức năng: chạy code mẫu, nhắc nhỡ học.
|
Chương 1: TỔNG QUAN VỀ ĐỀ TÀI
1.1. Mục đích nghiên cứu
Ngày nay, ứng dụng công nghệ thông tin và việc tin học hóa được xem là một trong những yếu tố mang tính quyết định trong hoạt động của chính phủ, tổ chức cũng như các công ty, nó đóng vai trò hết sức quan trọng, có thể tạo ra những bước đột phá mạnh mẽ.
Cùng với sự phát triển không ngừng về kỹ thuật máy tính và mạng điện tử, công nghệ thông tin cũng được những công nghệ có đẳng cấp cao và lần lượt chinh phục hết đỉnh cao này đến đỉnh cao khác. Mạng Internet là một trong những sản phẩm có giá trị hết sức lớn lao và ngày càng trở nên một công cụ không thể thiếu, là nền tảng chính cho sự truyền tải, trao đổi thông tin trên toàn cầu.
Giờ đây, mọi việc học tập online đang trở nên rất cần thiết cho học sinh, sinh viên. Bởi đó, những ứng dụng di động được lập trình bằng Android được người học rất ưa chuộng và được sử dụng phổ biến vì tính tiện lợi và di động của nó.
Giúp tiết kiệm chi phí phát triển về sau cho đơn vị phát triển phần mềm triển khai phần mềm. Nâng cao khả năng tư duy lập trình, bắt kịp xu hướng công nghệ mới.
Vì lẽ đó, chúng em đã thực hiện đề tài "Xây dựng ứng dụng hướng dẫn học chương 1,2,3 môn Lập trình trên Thiết bị di động". Chúng em sẽ viết một ứng dụng di động mà ở đó mọi người có thể học tập môn lập trình ứng dụng thiết bị di động, chạy code mẫu, xem tiến trình học, xem bài giảng, nhắc nhỡ học. Chúng em thực hiện đề tài này với mục đích học tập là chính và ứng dụng của chúng em xây dựng một phần giúp các bạn sinh viên học tập môn này tiện lợi hơn.
1.2. Nhiệm vụ nghiên cứu
So với những phương thức khác, ứng dụng học 3 chương đầu của môn lập trình trên thiết bị di động mang lại hiệu quả tương đối cao và tiết kiệm được chi phí. Hơn thế nữa, với sức mạnh đường truyền Internet ngày nay thì việc truyền tải thông tin rất nhanh và tiện lợi.
Biết được nhu cầu đó, bản thân của chúng em là những sinh viên công nghệ thông tin luôn thôi thúc bản thân mình phải làm gì đó. Cho nên chúng em đã xây dựng nên một ứng dụng, một hệ thống đơn giản, thân thiện, dễ sử dụng, cho phép người dùng truy cập một cách nhanh chóng.
1.3. Phương pháp nghiên cứu
Cách tiếp cận: Nghiên cứu các bài giảng trên lớp kết hợp với việc học hỏi qua một số tài liệu của NXB Giáo Dục.
Sử dụng các phương pháp nghiên cứu:
- Phương pháp đọc tài liệu.
- Phương pháp phân tích mẫu.
- Phương pháp thực nghiệm
Chương 2: CƠ SỞ LÝ THUYẾT
2.1. JAVA
2.1.1. Tổng quan về Java
Ngôn ngữ lập trình Java ban đầu được phát triển bởi Sun Microsystems do James Gosling khởi xướng và phát hành vào năm 1995 (Java 1.0 [J2SE]). Tính đến thời điểm này (tháng 2/2015) phiên bản mới nhất của Java Standard Edition (JSE) là 8. Với ưu thế về đa nền tảng (multi platform) Java càng lúc càng được ứng dụng rộng rãi trên nhiều thiết bị từ máy tính đến mobile và nhiều thiết bị phần cứng khác...
Java là ngôn ngữ lập trình hướng đối tượng nên nó cũng có 4 đặc điểm chung của các ngôn ngữ hướng đối tượng:
-
Tính trừu tượng (Abstraction): là tiến trình xác định và nhóm các thuộc tính, các hành động liên quan đến một thực thể đặc thù, xét trong mối tương quan với ứng dụng đang phát triển.
-
Tính đa hình (Polymorphism): cho phép một phương thức có các tác động khác nhau trên nhiều loại đối tượng khác nhau. Với tính đa hình, nếu cùng một phương thức ứng dụng cho các đối tượng thuộc các lớp khác nhau thì nó đưa đến những kết quả khác nhau. Bản chất của sự việc chính là phương thức này bao gồm cùng một số lượng các tham số.
-
Tính kế thừa (Inheritance): Điều này cho phép các đối tượng chia sẻ hay mở rộng các đặc tính sẵn có mà không phải tiến hành định nghĩa lại.
-
Tính đóng gói (Encapsulation): là tiến trình che giấu việc thực thi những chi tiết của một đối tượng đối với người sử dụng đối tượng ấy.
Bên cạnh đó Java còn có một số đặc tính khác:
-
Độc lập nền (Write Once, Run Anywhere): Không giống như nhiều ngôn ngữ lập trình khác như C và C ++, khi Java được biên dịch, nó không được biên dịch sang mã máy cụ thể, mà thay vào đó là mã byte code chạy trên máy ảo Java (JVM). Điều này đồng nghĩa với việc bất cứ thiết bị nào có cài đặt JVM sẽ có thể thực thi được các chương trình Java.
-
Đơn giản: học Java thật sự dễ hơn nhiều so với C/C++, nếu bạn đã quen với các ngôn ngữ lập trình hướng đối tượng thì việc học Java sẽ dễ dàng hơn. Java trở nên đơn giản hơn so với C/C++ do đã loại bỏ tính đa kế thừa và phép toán con trỏ từ C/C++.
-
Bảo mật: Java hỗ trợ bảo mật rất tốt bởi các thuật toán mã hóa như mã hóa một chiều (one way hashing) hoặc mã hóa công cộng (public key)...
-
Đa luồng: Với tính năng đa luồng Java có thể viết chương trình có thể thực thi nhiều task cùng một lúc. Tính năng này thường được xử dụng rất nhiều trong lập trình game.
-
Hiệu suất cao nhờ vào trình thu gom rác (garbage collection), giải phóng bộ nhớ đối với các đối tượng không được dùng đến.
-
Linh hoạt: Java được xem là linh hoạt hơn C/C ++ vì nó được thiết kế để thích ứng với nhiều môi trường phát triển.
2.1.2. Tại sao lại sử dụng Java?
Ngôn ngữ Java có cú pháp rất giống với ngôn ngữ C/C++ (là một ngôn ngữ rất mạnh được dùng phổ biến hiện nay), tuy nhiên nó đã được thay đổi khá nhiều để đáp ứng khả năng độc lập với hệ điều hành. Nền tảng của ngôn ngữ Java là các class. Các class đóng vai trò như những đối tượng, người lập trình khi xây dựng ứng dụng sẽ sử dụng một số class chuẩn của hệ thống, đồng thời có thể tự mình xây dựng class khác đáp ứng yêu cầu công việc.
Java là ngôn ngữ dễ học, nó lược bớt những lệnh thừa và rườm rà của C/C++ để người lập trình chú trọng vào việc viết chương trình. Đồng thời, nó còn hạn chế người lập trình không can thiệp quá sâu vào hệ thống.
Có một điểm mạnh của Java là Java có độ bảo mật cao. Một điểm nữa là Java là miễn phí, các công cụ lập trình của Java thường rất nhiều, các cộng đồng Java thì rất lớn, tạo ra được các plugin, các mã nguồn mở rất phong phú cho bạn sử dụng.
2.2. Tổng quan về Android
2.2.1. Nền tảng Android
Android là một hệ điều hành dựa trên nền tảng Linux. Nó được thiết kế ra để dành cho các thiết bị di động có màn hình cảm ứng như điện thoại thông minh hay máy tính bảng. Ban đầu Android được phát triển bởi Công ty Android với sự hỗ trợ tài chính từ Google, sau đó được Google mua lại vào năm 2005.
Android có mã nguồn mở và Google phát hành mã nguồn theo Giấy phép Apache. Chính mã nguồn mở và những giấy phép không có quá nhiều ràng buộc. Đã tạo điều kiện thuận lợi để Android phát triển. Các nhà phát triển thiết bị, mạng di động và các lập trình viên nhiệt huyết được điều chỉnh và phân phối Android một cách tự do. Thêm vào đó Android còn có một cộng đồng đông đảo các lập trình viên và các chuyên gia có thể chuyên viết các ứng dụng để mở rộng chức năng của thiết bị.
2.2.2. Sự phát triển của Android
Theo thống kê vào năm 2012, sau bốn năm ra mắt có khoảng 700.000 ứng dụng trên Android. Cửa hàng ứng dụng chính của Android, ước tính khoảng 25 tỷ lượt. Chỉ trong vòng hơn 10 năm android đã trở thành một hệ điều hành phổ biến trên thế giới. Nó đã phát triển bất chấp sự bùng nổ mạnh mẽ của hệ điều iOS của Apple.
Trong khi các thiết bị của Apple phát triển theo chiều hướng mức giá ngày càng tăng. Thì các thiết bị Android lại tăng cường mở rộng thị trường toàn cầu. Chính điều này đã tạo nên sự khác biệt về các con số. Vào thời điểm quý 2 năm 2017, Android chiếm 87,7% thị phần điện thoại thông minh trên toàn thế giới. Với tổng cộng 2 tỷ thiết bị đã được kích hoạt và 1,3 triệu lượt kích hoạt mỗi ngày.
Với sự phát triển đó, Android không thu mình trong những chiếc smartphone đó. Mà nó còn tìm đường đi vào nhiều các thiết bị khác. Ví dụ như các thiết bị về TV, máy chiếu, ô tô và thậm chí cả phương tiện giải trí. Bạn muốn đèn nhà mình bật sáng trong ngôi nhà thông mình của mình? Bạn có thể sử dụng giao diện màn hình cảm ứng dựa trên Android để thao tác điều khiển. Android đã mang tới nhưng thay đổi không thể ngờ tới trong cuộc sống con người. Nó làm cho thế giới trở nên tốt đẹp hơn bao giờ hết.
2.2.3. Tại sao lại sử dụng Android?
Cùng với sự phong phú về chủng loại, cấu hình và giá thành, điện thoại Android đã trở nên phổ biến và xâm nhập ngày càng sâu rộng tới người sử dụng trên thế giới. Có lẽ điều giúp cho “dế” Android phát triển nhanh chính là có một hệ điều hành được người dùng ưa chuộng nhất.
Android là hệ điều hành di động được sử dụng rộng rãi nhất hiện nay, chiếm 80% tổng số smartphone được sản xuất. Mỗi ngày có khoảng 100.000 thiết bị Android được tiêu thụ và mọi tầng lớp trong xã hội không khó để sở hữu một thiết bị chạy android
Kho ứng dụng của Android hiện đã chạm mốc 1 tỉ ứng dụng năm 2015 và đó là cột mốc đáng nhớ minh chứng cho sự phát triển của hệ điều hành mã nguồn mở này
2.3. IDE Android Studio
Android Studio là một phầm mềm bao gồm các bộ công cụ khác nhau dùng để phát triển ứng dụng chạy trên thiết bị sử dụng hệ điều hành Android như các loại điện thoại smartphone, các tablet... Android Studio được đóng gói với một bộ code editor, debugger, các công cụ performance tool và một hệ thống build/deploy (trong đó có trình giả lập simulator để giả lập môi trường của thiết bị điện thoại hoặc tablet trên máy tính) cho phép các lập trình viên có thể nhanh chóng phát triển các ứng dụng từ đơn giản tới phức tạp.
Việc xây dựng một ứng dụng mobile (hoặc tablet) bao gồm rất nhiều các công đoạn khác nhau. Đầu tiên chúng ta sẽ viết code ứng dụng sử dụng máy tính cá nhân hoặc laptop. Sau đó chúng ta cần build ứng dụng để tạo file cài đặt. Sau khi build xong thì chúng ta cần copy file cài đặt này vào thiét bị mobile (hoặc table) để tiến hành cài đặt ứng dụng và chạy kiểm thử (testing). Bạn thử tưởng tượng nếu với mỗi lần viết một dòng code bạn lại phải build ứng dụng, cài đặt trên điện thoại hoặc tablet và sau đó chạy thử thì sẽ vô cùng tốn thời gian và công sức. Android Studio được phát triển để giải quyết các vấn đề này. Với 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.
Chương 3: XÂY DỰNG ỨNG DỤNG HƯỚNG DẪN HỌC CHƯƠNG 1,2,3 MÔN LẬP TRÌNH TRÊN THIẾT BỊ DI ĐỘNG
3.1. Phân tích thiết kế hệ thống
3.1.1. Mô tả ứng dụng
Xây dựng ứng dụng bất kỳ ai tải ứng dụng về đều có thể học được môn "Lập trình ứng dụng trên thiết bị di động" chương 1,2,3. Người dùng và ứng dụng sẽ có thể thấy danh sách các bài học (các chương, mục chính), hiển thị danh sách code mẫu (chọn vào code mẫu hiện ra danh sách code mẫu), chạy code mẫu (bấm vào một code mẫu nào đó, sẽ hiện ra code và nút "chạy", nhấn nút "chạy để hiển thị kết quả), mình đã học tới bài nào, chạy code mẫu, có nhắc nhỡ khi đến giờ học (đặt nhắc nhỡ rồi tới giờ hệ thống sẽ hiện thông báo ra thanh panel), xem bài giảng (nhấn vào bài giảng hiện ra nội dung bài giảng, có nút bài sau và bài trước để di chuyển giữa các bài), xem tiến trình học (xem bài gần đây nhất là bài nào để xem bài tiếp theo), đặt câu hỏi thắc mắc (gửi câu hỏi về mail), giới thiệu ứng dụng (giới thiệu ứng dụng làm gì, tác giả là ai, chỉ hiển thị khi người dùng mở ứng dụng lần đầu tiên, người đã học thì vào mục giới thiệu để xem thông tin).
3.1.2. Sơ đồ phân cấp chức năng BFD
3.1.3. Sơ đồ luồng dữ liệu DFD
3.1.4. Sơ đồ thực thể kết hợp CDM
3.1.5. Thiết kế dữ liệu mức Logic LDM
3.1.6. Thiết kế dữ liệu mức Vật lý PDM
3.2. Giao diện ứng dụng
3.2.1. Giao diện "Giới thiệu ứng dụng"
Chức năng này chỉ hiện ra khi người dùng lần đầu tiên vào ứng dụng sẽ hiện ra giao diện giới thiệu thông tin về ứng dụng.
3.2.2. Giao diện "Xem danh sách bài học, thanh tiến trình"
Thanh tiến trình nói lên quá trình học chương 1,2,3 của môn đã đạt được bao nhiêu.
Danh sách bài học, nếu nhấn vào bài nào đó sẽ hiện ra nội dung bài học đó.
3.2.3. Giao diện "Xem bài học"
Là nơi hiển thị nội dung bài học được chọn từ danh sách bài học.
XEM THÊM ==> Hướng dẫn cài đặt chi tiết
Nguồn: Sharecode.vn