Mobile Device Programming
Goals
A student completing this course unit should be able to:
- Demonstrate know how regarding the programming model of a mainstream platform for mobile device application development;
- Evaluate the design decisions made in the development of mobile device applications that make use of both the device’s local resources and remote resources;
- Develop (design, implement, debug and deploy) mobile device applications.
Syllabus
Developing mobile device applications, materialised in a mainstream platform for mobile device application development;
- Architecture and programming model of the elected platform;
- Production cycle: development, deployment, execution monitoring and debug;
- Applications’ anatomy:component types, andd ependency resolution;
- Components activation: life-cycle, threading model and hosting;
- Creating graphical user interfaces: control hierarchies, event model and threading model;
- Persistent storage of data on the device;
- Access to remote resources (e.g. using the HTTP protocol), elementary replication techniques and replicas’ reconciliation
- Best-practices considering the target platform characteristics.
Outcomes
Mobile application development requires additional design concerns, considering the existing computational resources. Thus, in addition to the study of existing techniques, one must understand the targeted platform and the observable design decisions that have been undertaken.
The syllabus is thus in coherence with the objectives, to address all aspects of mobile application development for the chosen platform. The syllabus’ points 1, 3, and 4 enable the concretisation of the first objective.
During the contents’ presentation, the teacher promotes discussions of programming best practices (topic 8) applied to real problems. Such an approach, accompanied by a detailed study of the underlying platform, is coherent with the second objective.
The remaining topics (2, 5, 6 and 7) enable the creation of complete solutions and are therefore aligned with the third learning outcome.
Bibliography
Android reference documentation
“Learning Android, 2nd Edition” by M. Nakamura, M. Gargenta. Released 2014. Publisher(s): O’Reilly Media, Inc. ISBN: 9781449319236.
“Kotlin for Android Developers: Learn Kotlin the easy way while developing an Android App” by A. Leiva. Released 2016. Publisher(s): CreateSpace Independent Publishing Platform. ISBN: 9781530075614.