Semester: 1
ECTS: 5
Lectures: 15
Practice sessions: 30
Independent work: 105
Module Code: 24-132-0457
Semester: 1
ECTS: 5
Lectures: 15
Practice sessions: 30
Independent work: 105
Module Code: 24-132-0457

Module title:


Advanced mobile programming

Lecturers and associates:


Daniel Bele, Lecturer
Filip Kisić

Module overview:


This module introduces students to advanced concepts of mobile services and interfaces and to advanced, intrinsic, and third-party Kotlin libraries used to create more scalable and robust mobile applications.

This module is intended for students who already have the knowledge and skills to design and create mobile applications and want to build on that. Skills learned in this module will contribute significantly to students’ development as professionals in respected fields.

Students will learn:
• About separation of concerns, by using clean architecture and standardized Android Jetpack components.
• How to use MVVM (Model-View-ViewModel) design pattern in order to provide a stable entry point for test-driven development.
• How to implement navigation with emphasis on configuration and not on coding.
• About persistence and its implementation using the desirable ORM framework which works seamlessly clean and secure.

The module is taught in Kotlin programming language. The module assessment is based on individual student projects. In these projects, students must create mobile applications to the given specifications.

Literature:


Essential reading:
1. Jemerov D. and Isakova S. (2017) Kotlin in Action. 1st edn. Shelter Island: Manning Publications. ISBN 978-1617293290
2. Phillips B. et al (2019) Android Programming: The Big Nerd Ranch Guide. 1st edn. Atlanta: The Big Nerd Ranch Guides.

Recommended reading:
1. Leiva A. and Gardner B. (2016) Kotlin for Android Developers: Learn Kotlin the easy way while developing an Android App. 1st edn. Scotts Valley: CreateSpace Independent Publishing Platform.

Further reading:
1. Skeen J. and Greenhalgh, D. (2018) Kotlin Programming: The Big Nerd Ranch Guide. 1st edn. Atlanta: The Big Nerd Ranch Guides.

2. Miola A.(2023) Flutter Complete Reference 2.0: The ultimate reference for Dart and Flutter. 2nd edn.

3. Katz.M, Ngo V. and Guzzi V. (2022) Flutter Apprentice: Learn to Build Cross-Platform Apps. 3rd edn. Razeware LLC

4. Windmill E. (2019) Flutter in Action. 1st edn. Manning