Mobile Application Design and Programming (2019 Spring Semester)

Course Description
This course intended to introduce you basic mobile programming  and design techniques under the Android platform. This course will be a mixture of lectures, hands-on or paper reading assignments, and one course project. Students are encouraged to ask questions during lectures. In the course project, students will form teams to develop and prototype mobile solutions, which tends to apply their artistic and technology abilities to address interdisciplinary problems.


Textbook
No specific textbook. All required reading material will be provided, mostly from the recent literature.

Instructor
Chuang-Wen You (游創文), Room #9417, 4th Floor, Extended Education Building, Nanda Campus (南大校區推廣教育大樓4樓9417室); Office hour: by appointment via email, email: cwyou2004 (at) gmail (dot) com


Teaching assistants & office hours
TBD; Office hour: TBD, email: TBD

Course material
Please download from the NTHU Moodle E-Learning Course Webpage


Schedule

Weeks Dates Topics Assignments Project

1

3/6

Course Introduction & Logistics [slides]

Assignment 0 (due: 3/13)

2

3/13

Lecture 1 [slides]

  • Getting starting in App Development/Variables/Data type/Operators

3

3/20

Lecture 2 [slides]

  • Null Safety/Loops/Control flow/Exception handling
Assignment 1 (due: 4/3)

4

3/27

Lecture 3 [slides]

  • String/Collections/Functions/Classes/Interface basics
Project 0 (due: 4/10)

5

4/3

(民族掃墓節暨兒童節補假)


6

4/10

Lecture 4 [slides]

  • Mobile Applications Paper Presentation
  • Emerging IoT Systems and Showcases

7

4/17

Lecture 5 [slides]

  • Android Application Fundamentals
  • Android NFC basics
Assignment 2 (due: 5/1)

8

4/24

Lecture 6 [slides]

  • Packages & imports/Visibility modifiers/Inheritance/Objects and Companion Objects/Service
  • Android Accelerometer basics

9

5/1

Lecture 7 [slides]

  • Inheritance/Generics/Android Touch gestures
  • Android Gyroscope basics

10

5/8

Lecture 8 [slides]

  • Android magnetometer/GPS
Assignment 3 (due: 5/26) Project 1 (due: 5/22)

11

5/15

Lecture 9 [slides]

  • Android ARCore (1)
Project 2 (due: 5/29)

12

5/22

Lecture 10 [slides]

  • Augmented Reality Paper Presentation
  • Early Stage Prototype
Project 3 (due: 6/5)

13

5/29

Lecture 11 [slides]

  • Project Plan Presentation
  • ARCore (2)
Assignment 4 (due: 6/12)

14

6/5

Lecture 12 [slides]

  • Project Assignment #3 Presentation
Project 4 (due: 6/12 & 6/26)
Project 5 (due: 6/12 & 6/18)

15

6/12

Lecture 13 [slides]

  • Project Rehearsal Presentation

16

6/19

Lecture 14 [slides]

  • Project Final Presentation

17

6/26

Dragon Boat Festival (端午節)



Grading

Homework + Hands-On and Paper Reading Assignment + Course Project + Participation

References
Murphy, M.L. (2011). The Busy Coder's Guide to Android Development. Macungie, PA: CommonsWare, LLC.



Last Update: June 23, 2020