iOS Application Development - WS 2018/19
In this course, you'll learn to develop mobile applications for Apple's iOS devices: iPhone and iPad.
Apple's designed its mobile iOS operating system and its SDK from scratch. The iOS SDK follows many modern software development patterns, making it an ideal subject to learn how to design such SDKs today. Smartphones and tablets are also very interesting devices from an HCI perspective. The user interface has to deal with multitouch interaction, which presents new challenges to the software architecture, e.g., in event handling. With their rich sets of sensors, iOS devices also allow for input far beyond mouse and keyboard. Finally, both the iPhone and the iPad have simply become "in"-devices since their introduction. Didn't you ever want to show your own app to your friends on your iPhone?
- At the end of the course, you will be able to implement full iOS apps
- You will know Swift: syntax, concepts, and how to use it correctly. Swift can be used to program iOS, macOS, watchOS, and tvOS
- You will be able to design your apps to look and feel according to Apple’s Human Interface Guidelines
- Your implementation will follow the recommended design strategies: MVC, delegation, target-action
- You will be able to use the most important frameworks in Cocoa Touch (UIKit, Foundation, SpriteKit, MapKit, AVFoundation, etc.) and can easily learn more!
- Your will know how to make your apps interactive: animations, multimedia, graphics, sensors, etc
Class Times and Locations
- first lecture (introduction) is on Tuesday 09.10.18
- second lecture is on Monday 22.10.18
Computer Science (B.Sc.), (M.Sc.)
Media Informatics (M.Sc.)
Software Systems Engineering (M.Sc.)/Areas of Specialization/Media Computing and Interactive Systems
Technical Communication (M.Sc.)
Number of SWS: 4
ECTS Credits: 6
Course language: The lecture recordings are in English.
This course is structured in 3 different parts
- Lecture (~5 weeks): Here, we will introduce the fundamentals of iOS development (e.g., Swift fundamentals, mobile device development, event handling, ...). Both weekly timeslots are used for the lecture.
- Seminar (~4 weeks): Students will prepare and present information about a specific iOS framework (e.g., CoreData, Rendering frameworks, MapKit, ...). Both weekly timeslots are used for student presentations & preparations
- Project (~6 weeks): During this part, students will develop a larger application using the knowledge gained in the course. Both weekly timeslots are used for feedback sessions with the individual groups.
The final grade consists of three components:
|A short presentation based on a written report||17%|
|A project in groups (2-4 Students) with a 20 minute presentation at the end of the semester||50%|
|An oral exam||33%|