Đại Học Quốc Gia TP.HCM Trường Đại Học Bách Khoa Khoa Khoa học Kỹ thuật Máy tính Vietnam National University – HCMC Ho Chi Minh City University of Technology Faculty of Computer Science and Engineering Đề cương môn học PHÁTTRIỂNỨNGDỤNGTRÊNTHIẾTBỊDIĐỘNG (Mobile Application Development) Số tín (3.0.6) Số tiết Tổng: 45 Môn ĐA, TT, LV Tỉ lệ đánh giá Hình thức đánh giá MSMH LT: 45 TH: BT: 0% TN: 0% KT: 20% - Bài tập lớn: - Kiểm tra: trắc nghiệm, 60 phút - Thi: trắc nghiệm tự luận, 90 phút CO3043 TN: BTL/TL: x BTL/TL: 30% Thi: 50% Môn tiên Môn học trước - Cấu trúc liệu giải thuật - Lập trình hướng đối tượng CO2003 CO2005 Môn song hành CTĐT ngành Trình độ đào tạo Khoa học máy tính Đại học Cấp độ môn học Ghi khác Tuần 11, 12 cần học phòng máy iMac Mô tả môn học (Course Description) Mục tiêu môn học: Môn học giúp sinh viên có nhìn tổng quan phương pháp thiết kế ứngdụngthiếtbịdiđộng công cụ lập trình để pháttriểnứngdụng cho hệ điều hành diđộng khác (Android, iOS, Windows Phone) Nội dung tóm tắt môn học: - Tổng quan lập trình ứngdụngthiếtbịdiđộng - Xây dựng web service cho ứngdụngdiđộng - Thiết kế giao diện người dùng cho ứngdụngdiđộng - Lập trình ứngdụng cho hệ điều hành diđộng khác (Android, iOS, Windows Phone) Tài liệu học tập [1] Professional Mobile Application Development - Jeff McWherter and Scott Gowell (ISBN: 978-1118203903) [2] Android Programming Tutorials: Easy-To-Follow Training-Style Exercises on Android Application Development - Mark Lawrence Murphy (ISBN: 978-0981678023) [3] Beginning iOS Programming: Building and Deploying iOS Applications - Nick Harris (ISBN: 978-1118841471) [4] Beginning Windows Phone Development - Henry Lee and Eugene Chuvyrov (ISBN: 9781430232162) 1/5 Mục tiêu môn học (Course Goals) Sau học đạt môn học này, sinh viên có khả năng: - L.O.1: Phân tích kiến trúc cho ứngdụngdiđộng - L.O.2: Xây dựng web service dùngứngdụngdiđộng - L.O.3: Thiết kế giao diện người dùng cho ứngdụngdiđộng - L.O.4: Pháttriểntriển khai ứngdụng cho thiếtbị Android - L.O.5: Pháttriểntriển khai ứngdụng cho thiếtbị iOS - L.O.6: Pháttriểntriển khai ứngdụng cho thiếtbị Windows Phone - L.O.7: Xây dựngứngdụngdiđộng đa tảng Chuẩn đầu môn học (Course Outcomes) STT L.O.1 L.O.2 L.O.3 L.O.4 L.O.5 L.O.6 Chuẩn đầu môn học Phân tích kiến trúc cho ứngdụngdiđộng L.O.1.1 – Hiểu tầm quan trọng ứngdụng cho thiếtbịdiđộng L.O.1.2 – Phân biệt khác ứngdụng cho PC ứngdụngdiđộng L.O.1.3 – Nắm bắt xu hướng ứngdụngdiđộng L.O.1.4 – Chỉ tảng cho ứngdụngđộng Xây dựng web service dùngứngdụngdiđộng L.O.2.1 – Hiểu web service L.O.2.2 – Chỉ định dạng liệu truyền thông qua web service L.O.2.3 – Lưu trữ liệu máy chủ điện toán đám mây L.O.2.4 – Hiện thực web service cho ứngdụng thực tế Thiết kế giao diện người dùng cho ứngdụngdiđộng L.O.3.1 – Thiết kế mẫu cho ứngdụngdiđộng L.O.3.2 – Thiết kế giao diện để hiển thị liệu thiếtbịdiđộng L.O.3.3 – Hiểu tương tác người dùngứngdụngdiđộngPháttriểntriển khai ứngdụng cho thiếtbị Android L.O.4.1 – Dùng Android SDK để pháttriểnứngdụng L.O.4.2 – Thiết kế giao diện (layout) L.O.4.3 – Giao tiếp liệu với web service L.O.4.4 – Sử dụng dịch vụ thiếtbịdiđộng (định vị, cảm biến, NFC, v.v…) L.O.4.5 – Triển khai ứngdụng Android Google Play Pháttriểntriển khai ứngdụng cho thiếtbị iOS L.O.5.1 – Hiểu ngôn ngữ lập trình Objective-C L.O.5.2 – Dùng iOS SDK để pháttriểnứngdụng L.O.5.3 – Thiết kế giao diện (layout) L.O.5.4 – Giao tiếp liệu với web service L.O.5.5 – Sử dụng dịch vụ thiếtbịdiđộng (định vị, cảm biến, NFC, v.v…) L.O.5.6 – Triển khai ứngdụng iOS App Store Pháttriểntriển khai ứngdụng cho thiếtbị Windows Phone L.O.6.1 – Dùng Visual Studio để pháttriểnứngdụng L.O.6.2 – Thiết kế giao diện (layout) L.O.6.3 – Giao tiếp liệu với web service CDIO 2/5 L.O.7 L.O.6.4 – Sử dụng dịch vụ thiếtbịdiđộng (định vị, cảm biến, NFC, v.v…) L.O.6.5 – Triển khai ứngdụng Windows Phone Windows Store Xây dựngứngdụngdiđộng đa tảng L.O.7.1 – Chỉ cần xây dựng websites cho diđộng mà không cần xây dựngứngdụng L.O.7.2 – Xây dựng responsive design websites cho thiếtbịdiđộng L.O.7.3 – Xây dựngứngdụngdiđộng đa tảng với HTML5 JavaScript dùng PhoneGap Hướng dẫn cách học - chi tiết cách đánh giá môn học Hướng dẫn cách học: Tài liệu học tập bao gồm: đề cương môn học, slide giảng, tập lớn lưu trữ máy chủ quản lý tư liệu học tập khoa (trường) Sinh viên tải về, in mang theo lên lớp học Sinh viên cần làm thêm tập thực hành Sinh viên nên sử dụng hệ thống máy chủ Sakai để trao đổi với sinh viên khác, TA, giảng viên Sinh viên nên học đầy đủ làm tập trình học giúp tiết kiệm thời gian trình ôn thi kỳ cuối kỳ Sinh viên cần nộp báo cáo tập lớn hạn Chi tiết cách đánh giá môn học: Kiểm tra kỳ (20%) Bải tập lớn (30%) Thi cuối kỳ (50%) Dự kiến danh sách Cán tham gia giảng dạy TS Lương Thế Nhân ThS Vương Bá Thịnh ThS Võ Thanh Hùng Nội dung chi tiết Tuần Nội dung Chương 1: Giới thiệu môn học 1.1 Giới thiệu lập trình ứngdụngthiếtbịdiđộng 1.2 Tầm quan trọng ứngdụngdiđộng 1.3 Kiến trúc ứngdụngdiđộng 1.4 Các hệ điều hành cho thiếtbịdiđộng Yêu cầu tự học đ/v sinh viên: 2, Chương 2: Web Services for Mobile Devices 2.1 Khái niệm Web service 2.2 Ngôn ngữ Web service 2.3 Lưu trữ liệu 2.4 Hiện thực Web service Chuẩn đầu chi tiết L.O.1.1 – Hiểu tầm quan trọng ứngdụng cho thiếtbịdiđộng L.O.1.2 – Phân biệt khác ứngdụng cho PC ứngdụngdiđộng L.O.1.3 – Nắm bắt xu hướng ứngdụngdiđộng L.O.1.4 – Chỉ tảng cho ứngdụngđộng L.O.2.1 – Hiểu web service L.O.2.2 – Chỉ định dạng liệu truyền thông qua web service Hoạt động đánh giá - Kiểm tra - Thi - Kiểm tra - Thi 3/5 Yêu cầu tự học đ/v sinh viên: 12 4, Chương 3: Mobile User Interface and Interaction Design 3.1 Người dùngứngdụngdiđộng 3.2 Thiết kế hiển thị thông tin thiếtbịdiđộng 3.3 Tương tác người dùngthiếtbịdiđộng Yêu cầu tự học đ/v sinh viên: 12 Chương 4: Mobile Design Patterns 4.1 Giới thiệu mẫu giao diện thiếtbịdiđộng 4.2 Dùng công cụ để thiết kế giao diện Yêu cầu tự học đ/v sinh viên: 7, Chương 5: Mobile Websites 5.1 Khái niệm responsive design 5.2 Cơ HTML5, JavaScript CSS3 5.3 Thiết kế websites với jQuery Mobile Yêu cầu tự học đ/v sinh viên: 12 9, 10 Chương 6: Android Programming 6.1 Giao diện thiếtbị Android 6.2 Giao tiếp liệu với web service 6.3 Các dịch vụ thiếtbị Android 6.4 Hiện thực ứngdụngthiếtbị Android (BTL1) Yêu cầu tự học đ/v sinh viên: 16 11, 12 Chương 7: iOS Programming 7.1 Cơ ngôn ngữ Objective-C 7.2 Giao diện thiếtbị iOS 7.3 Giao tiếp liệu với web service 7.4 Các dịch vụ thiếtbị iOS 7.5 Hiện thực ứngdụngthiếtbị iOS (BTL2) Yêu cầu tự học đ/v sinh viên: 16 L.O.2.3 – Lưu trữ liệu máy chủ điện toán đám mây L.O.2.4 – Hiện thực web service cho ứngdụng thực tế L.O.3.1 – Thiết kế mẫu cho ứngdụngdiđộng L.O.3.2 – Thiết kế giao diện để hiển thị liệu thiếtbịdiđộng L.O.3.3 – Hiểu tương tác người dùngứngdụngdiđộng L.O.3.1 – Thiết kế mẫu cho ứngdụngdiđộng L.O.3.2 – Thiết kế giao diện để hiển thị liệu thiếtbịdiđộng L.O.3.3 – Hiểu tương tác người dùngứngdụngdiđộng L.O.7.1 – Chỉ cần xây dựng websites cho diđộng mà không cần xây dựngứngdụng L.O.7.2 – Xây dựng responsive design websites cho thiếtbịdiđộng L.O.7.3 – Xây dựngứngdụngdiđộng đa tảng với HTML5 JavaScript dùng PhoneGap L.O.4.1 – Dùng Android SDK để pháttriểnứngdụng L.O.4.2 – Thiết kế giao diện (layout) L.O.4.3 – Giao tiếp liệu với web service L.O.4.4 – Sử dụng dịch vụ thiếtbịdiđộng (định vị, cảm biến, NFC, v.v…) L.O.4.5 – Triển khai ứngdụng Android Google Play L.O.5.1 – Hiểu ngôn ngữ lập trình Objective-C L.O.5.2 – Dùng iOS SDK để pháttriểnứngdụng L.O.5.3 – Thiết kế giao diện (layout) L.O.5.4 – Giao tiếp liệu với web service L.O.5.5 – Sử dụng dịch vụ thiếtbịdiđộng (định vị, cảm biến, NFC, v.v…) L.O.5.6 – Triển khai ứngdụng iOS App Store - Kiểm tra - Thi - Kiểm tra - Thi - Kiểm tra - Thi - Kiểm tra - Bài tập lớn - Thi - Kiểm tra - Bài tập lớn - Thi 4/5 13, 14 Chương 8: Window Phone Programming 8.1 Giao diện thiếtbị Windows Phone 8.2 Giao tiếp liệu với web service 8.3 Các dịch vụ thiếtbị Windows Phone 8.4 Hiện thực ứngdụngthiếtbị Windows Phone (BTL3) Yêu cầu tự học đ/v sinh viên: 16 15 Chương 9: PhoneGap/Cordova 9.1 Giới thiệu tảng PhoneGap 9.2 Hiện thực ứngdụng PhoneGap 9.3 Từ ứngdụng PhoneGap tạo ứngdụng cho hệ điều hành diđộng khác Yêu cầu tự học đ/v sinh viên: L.O.6.1 – Dùng Visual Studio để pháttriểnứngdụng L.O.6.2 – Thiết kế giao diện (layout) L.O.6.3 – Giao tiếp liệu với web service L.O.6.4 – Sử dụng dịch vụ thiếtbịdiđộng (định vị, cảm biến, NFC, v.v…) L.O.6.5 – Triển khai ứngdụng Windows Phone Windows Store L.O.7.1 – Chỉ cần xây dựng websites cho diđộng mà không cần xây dựngứngdụng L.O.7.2 – Xây dựng responsive design websites cho thiếtbịdiđộng L.O.7.3 – Xây dựngứngdụngdiđộng đa tảng với HTML5 JavaScript dùng PhoneGap - Kiểm tra - Bài tập lớn - Thi - Kiểm tra - Thi Thông tin liên hệ Bộ môn/Khoa phụ trách Bộ Môn Khoa Học Máy Tính – Khoa KH&KT Máy Tính Văn phòng Tòa nhà A3 Trường ĐH Bách Khoa (CS1) Điện thoại 38647256 - 5839 Giảng viên phụ trách TS Lương Thế Nhân Email nhan@hcmut.edu.vn 5/5 ... trúc cho ứng dụng di động - L.O.2: Xây dựng web service dùng ứng dụng di động - L.O.3: Thiết kế giao di n người dùng cho ứng dụng di động - L.O.4: Phát triển triển khai ứng dụng cho thiết bị Android... trúc cho ứng dụng di động L.O.1.1 – Hiểu tầm quan trọng ứng dụng cho thiết bị di động L.O.1.2 – Phân biệt khác ứng dụng cho PC ứng dụng di động L.O.1.3 – Nắm bắt xu hướng ứng dụng di động L.O.1.4... service cho ứng dụng thực tế Thiết kế giao di n người dùng cho ứng dụng di động L.O.3.1 – Thiết kế mẫu cho ứng dụng di động L.O.3.2 – Thiết kế giao di n để hiển thị liệu thiết bị di động L.O.3.3