Service and application development for iOS

Course Description

iOS skill offers to students the opportunity to acquire the knowledge needed to create and distribute applications for the iOS operating system in the Swift programming language. Students will learn how to use the XCode development environment, multithreading in iOS applications, making animations and using notifications. Additionally, complex user interfaces for iOS operating system will be presented, along with screen navigation, handling user interface components, and storing data in iOS applications.

Learning Outcomes

  1. Use the basic and complex concepts of the Swift programming language
  2. Use the XCode development environment
  3. Create applications for iOS operating system in Swift programming language
  4. Create user interfaces in iOS applications by using selected frameworks
  5. Use data in applications for iOS operating system
  6. Create animations in user interface
  7. Plan the process of iOS application distribution

Forms of Teaching

Lectures

Lectures are held two hours per week, and are accompanied by a presentation and other materials which are previously uploaded on the course web site.

Online in entirety

Laboratory excercises involve collaborative projects and weekly consultations with lecturer.

Independent assignments

Weekly consultations with lecturer.

Programming Exercises

Homeworks

Other Forms of Group and Self Study

Application development

Week by Week Schedule

  1. Introduction: XCode development environment, Swift programming language, and the Model-View-Controller (MVC) architectural model.
  2. Swift programming language.
  3. iOS applications user interface: basic interface components, custom interface components.
  4. Navigation in iOS operating system applications.
  5. Other interface components in iOS applications. Exceptions in Swift programming language, delegate concept.
  6. Data collections in the iOS operating system. Presentation of data collections in iOS applications. Retrieving data over the network and presenting it in the app. Multithreading in iOS applications.
  7. Data persistence in iOS applications.
  8. Additional iOS operating system functionalities. Application lifecycle. Notifications. Animations.

Study Programmes

University undergraduate
Skills (4. semester) (6. semester)
Skills (4. semester) (6. semester)
[FER2-HR] Computer Engineering - module
Skills (6. semester)
[FER2-HR] Computer Science - module
Skills (6. semester)
[FER2-HR] Computing - study
Skills (4. semester)
[FER2-HR] Control Engineering and Automation - module
Skills (6. semester)
[FER2-HR] Electrical Engineering and Information Technology - study
Skills (4. semester)
[FER2-HR] Electrical Power Engineering - module
Skills (6. semester)
[FER2-HR] Electronic and Computer Engineering - module
Skills (6. semester)
[FER2-HR] Electronics - module
Skills (6. semester)
[FER2-HR] Information Processing - module
Skills (6. semester)
[FER2-HR] Software Engineering and Information Systems - module
Skills (6. semester)
[FER2-HR] Telecommunication and Informatics - module
Skills (6. semester)
[FER2-HR] Wireless Technologies - module
Skills (6. semester)
University graduate
[FER3-HR] Electrical Engineering and Information Technology - study
Skills (2. semester)
[FER3-HR] Information and Communication Technology - study
Skills (2. semester)
[FER2-HR] Computer Engineering - profile
Skills (2. semester)
[FER2-HR] Computer Science - profile
Skills (2. semester)
[FER2-HR] Control Engineering and Automation - profile
Skills (2. semester)
[FER2-HR] Electrical Engineering Systems and Technologies - profile
Skills (2. semester)
[FER2-HR] Electrical Power Engineering - profile
Skills (2. semester)
[FER2-HR] Electronic and Computer Engineering - profile
Skills (2. semester)
[FER2-HR] Electronics - profile
Skills (2. semester)
[FER2-HR] Information Processing - profile
Skills (2. semester)
[FER2-HR] Software Engineering and Information Systems - profile
Skills (2. semester)
[FER2-HR] Telecommunication and Informatics - profile
Skills (2. semester)
[FER2-HR] Wireless Technologies - profile
Skills (2. semester)

Literature

Apple Inc. (2017.), The Swift Programming Language, Apple Inc.
Matt Neuburg (2017.), iOS 11 Programming Fundamentals with Swift: Swift, Xcode, and Cocoa Basics, O'Reilly Media
Apple Inc. (2017.), Using Swift with Cocoa and Objective-C, Apple Inc.

Laboratory exercises

For students

General

ID 180934
  Summer semester
3 ECTS
L0 English Level
L1 e-Learning
16 Lectures
0 Seminar
0 Exercises
24 Laboratory exercises
0 Project laboratory

Grading System

Excellent
Very Good
Good
Sufficient