Official course description, subject to change:
Preliminary info last published 15/11-20

Mobile App Development, BSc

Course info
Language:
English
ECTS points:
7.5
Course code:
BSMOAPD1KU
Participants max:
55
Offered to guest students:
yes
Offered to exchange students:
yes
Offered as a single subject:
yes
Price (single subject):
10625 DKK (incl. vat)
Programme
Level:
Bachelor
Programme:
BSc in Software Development
Staff
Course semester
Semester
Forår 2022
Start
31 January 2022
End
27 May 2022
Exam
Exam type
ordinær
Internal/External
ekstern censur
Grade Scale
7-trinsskala
Exam Language
GB
Abstract

This course gives a fundamental overview of Android programming concepts and the best practices for mobile app development.

Description

The mobile app development has seen significant growth in the recent past, mainly due to the current computational power of modern tablets and mobile phones. The development of mobile applications brings a set of different challenges to the developer, such as where the application will run (hardware specifications) and how is the application performance when running (OS specifications). This course provides fundamental knowledge on how to develop Android applications using both Java and Kotlin programming languages and introduces the following topics:

  • The Android application lifecycle;
  • The four different types of Android components, namely: (1) activities, (2) services, (3) broadcast receivers, and (4) content providers;
  • The design of user interfaces (UI) using layouts, resources, and a set of Android UI controls (e.g., TextView, EditText, Button, Checkbox, Progressbar, among others);
  • How to share data between Android components, how to persist data using files and databases, and how to manage the internal and external file storages;
  • The use of concurrency to improve speed and performance in Android applications;
  • The development of multimedia applications using the built-in camera and audio resources;
  • The use of geolocation information to develop location-aware Android applications;
  • The use of device sensors (motion, position, environment, and advanced sensors) to collect additional information for Android applications; and
  • The security aspects of Android deployment to make an Android application safer.

Formal prerequisites
The student must be familiar with at least one object-oriented programming language, such as Java (highly recommended), C++, C#, Objective-C. The student must be able to design, implement, and test medium-sized object-oriented programs as covered at SWU.

These background skills are achieved by completing one of the following courses in the 1st and 2nd semester from the BSc in Software Development (BSWU), such as "Introductory Programming with Project", "Algorithms and Data Structure" or similar.

Experience with Kotlin programming language will be an advantage but is not compulsory.
Intended learning outcomes

After the course, the student should be able to:

  • design and implement a non-trivial Android application
  • identify the different types of Android components, their purpose and lifecycle, and their role in the mobile application pipeline
  • describe the Android OS architecture, and how to build, run, and debug a mobile app
  • design mobile applications based on the limitations and resources of mobile platforms
  • design and implement mobile applications using different resources, such as communication and multimedia, local and remote data persistence, location-aware applications, built-in sensors, and mobile concurrency
  • plan and execute the deployment of an Android application using Android Studio
  • develop native Android applications using the Kotlin programming language
Ordinary exam
Exam type:
B: Oral exam, External (7-point scale)
Exam variation:
B1H: Oral exam with time for preparation. Home.