Copenhagen School of Design and Technology

da

Mobile Development - Android & IOS

2022/2023
Danish title
Mobile Development - Android & IOS
Study programme
Computer Science
Type of education
Full time education
Level of education
Academy Profession
Semester
4. semester
Duration of the subject/module
1 semester
Ects
10
Programme elements
Elective
Language
Danish and English
Start time
Autumn
Spring
Location
Guldbergsgade 29 N, København N
Subject number
3050413
Responsible for the subject(s)/modul(es)
Jon Eikholm
  • Purpose and learning objectives

    In this course you will learn how to build native apps for Android and iOS.
    The goal is to learn how to design and implement mobile applications (apps) for
    phone/tablet. You will learn how to create prototype apps, based on customer requirements. During classes we will build apps, that demonstrate the features mentioned below.
    We will cover best-practices, used in mobile development. Students will be able to run their app on both software simulator, and on physical devices: phone and tablet.
    Today it is possible to develop mobile apps, which can solve many of today’s user requirements. Using built-in sensors, such as GPS, Accelerometer, Gyroscope, Pedometer, Altitude, Microphone, Camera and Magnetometer developers can build apps which are far more functionality than desktop applications. Add in the connection to Cloud services, such as Database, Authentication and Artificial Intelligence(AI), the mobile app has access to all the services a desktop application has.


    Tools:
    Android Studio https://developer.android.com/studio
    Xcode https://developer.apple.com/xcode/

    Mobile application topics:
    ● Mobile Applicataion User Interface
    ● Mobile Application Architecture
    ● App Lifecycle
    ● Design Pattern
    ● Responsive Design

    Mobile application features:
    ● Multitouch Gesture
    ● Pop up view
    ● Map
    ● Camera
    ● Sensors
    ● List
    ● Cloud Database
    ● Cloud Authentication

    Programming languages:
    Swift https://docs.swift.org/swift-book/
    Java https://docs.oracle.com/en/java/javase/14/

    Android specific features:
    ● Java (Not Kotlin)
    ● Activity
    ● Intent
    ● ListView
    ● Class hierarchy
    ● Manifest
    ● Resources

    Java concept:
    ● Lambda expressions

    iOS specific features:
    ● Swift
    ● Storyboard
    ● Autolayout
    ● Segue
    ● View Controller
    ● Navigation Controller

    Swift concepts:
    ● Optional
    ● Tuple
    ● Collection
    ● Closure
    ● Class
    ● Protocol
    ● Extension

    Knowledge

    The student will gain necessary knowledge to build a prototype mobile app, based on user requirements. This includes knowing the necessary development tools, cloud-services and programming languages.

    Skills

    The student will learn how to work with the IDEs Android studio and Xcode to build native mobile applications. The student will learn to combine previous knowledge in order to solve problems. Also the skill to find relevant information on the internet will be trained.

    Competences

    The student will learn how to convert user-requirements to a mobile application. Learn the different steps in mobile develoment, from talks with the client, prototyping and integrating with cloud services. The student will gain competence in building well-organized apps, using extendable and reusable code base.

  • Type of instruction
    Class presentations of new material. In-class exercises. Group work and individual assignments.
  • Subject/module requirement for participation

    Academic requirement for participation
    The student must know programming on a level of 3rd. semester KEA Computer Science AP

    Equipment needed to participate
    You need a computer with min. 8GB ram and Solid State Disk (SSD). The reason for this is, that Android Studio and the simulators use a lot of CPU time.

    For the first 6 weeks, there are two possible options:
    Option 1:
    Develop iOS apps, using Xcode 14.1. Here the student will need a computer running macOS, version 12.5 or later.
    This will be the main content during the 6 weekly classes.

    Option 2:
    Develop cross-platform apps, using React Native.
    This will be self-study, which means that the student can not expect detailed guidance from the teacher.

    For the next 6 weeks we work with Android Studio (Win, macOS, Linux), creating native Android apps.

    For the last 4 weeks, students are free to build either iOS, Android or cross-platform app.

  • Exam

    The learning outcomes of the exam are identical with the learning outcomes of the subject(s)/modul(es)

    Prerequisites for access to the examination
    There will be 2 mandatory exercises. They must be handed in and approved, in order for the student to gain access to the exams.
    Exam in one or more subjects
    Subject/module is tested standalone
    Type of exam
    Oral examination
    Oral 30 minutes exam (incl. greading) with internal censor.
    ○ 10 minutes presentation
    ○ 15 minutes Q&A
    ● Student presents exam project:
    ○ App demo
    ○ Explain interesting part of code and choice of technologies
    ○ Q & A about project and curriculum

    ● No report
    ● No mandatory exam project
    Individual exam or group exam
    Individual
    Exam languages
    English
    Duration
    30 min.
    Type of evaluation
    7-point grading scale
    Examiners
    Internal censure
64
hours of teaching
210
hours of preparation
The figure shows the extent of workload related to the subject divided into different study activities.

In the subject Mobile Development - Android & IOS you will receive 64 hours of instruction, which corresponds to 85 lessons (1 lesson = 45 min.) and 23% of your total workload for the subject.

The teaching primarily consists of the following activities: classroom teaching, exercises.
The preparation primarily consists of the following activities: searching for information, exercises.

Read about KEAs Study Activity Model

*KEA can deviate from the number of hours if this is justified by special circumstances