iPhone Application Programming


This course became the #2 download on iTunes U Germany in 2011


News

  • June 3, 2013: In WS13/14, this class will take place Tue 9:15-11:45 (lecture) and Mon 16:15-17:45 (lab) in room 5052 as in past years. Please ignore any other dates posted in CAMPUS.

In this course students learn to develop and deploy mobile applications on Apple's iPhone, iPod touch and iPad.

The iPhone OS SDK was designed from scratch when introduced with the iPhone OS 2. In its design, it follows various established software development patterns, making it an ideal subject to teach how to create such an SDK. This shows how software design patterns can advance from pure theory to a real-world setting. On the other hand, the iPhone is a very interesting device from an HCI perspective. The user interface has to deal with (multi-)touch interaction, which results in new challenges to the software architecture, e.g., in event handling. With its rich set of sensors, the iPhone allows 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?


Feedback

I'd like to thank you and your assistants for your hard work. Your iOS programming course is absolutely awesome and I have been able to start programming in Objective-C. Another book I tried had given me literally nothing, and I wasn't able to switch from Python development to ObjC. Your "theory comes first" approach really works well, much better than so-called "hands-on programming" approaches. -- Michael Samoylov, software developer (Feb 2, 2013)


Announcements

Assignments and lecture resources will be available in the L2P eLearning Room (only for registered students). Lecture videos and slides will be available to the general public on iTunes U.


Course registration

Please register for this course in CAMPUS.

If you want to participate in the accompanying lab, please fill out this survey. As lab spots are limited, we cannot guarantee participation for every applicant.

We have collected some helpful information for students and RWTH institutes to get started as iPhone developers.


This course is held by Prof. Jan Borchers, Florian Heller, and Leonhard Lichtschlag.
The final project events are organized in collaboration with AC.E.


Topics

  1. Introduction to Mobile Programming
  2. Programming Fundamentals
  3. Foundation Classes
  4. UI Design
  5. View Controllers
  6. Drawing
  7. Touch and Input
  8. Audio
  9. Storing Data
  10. Maps and Location
  11. Networking
  12. iPad Programming & Integration
  13. Instruments


Schedule and Credits

ECTS Credits: 6 for the lecture and the lab, 3 for the lecture only.

Regular appointments (lecture starts Oct. 9, lab starts Oct. 15):
LectureTue9:00-11:30Room 2222
LabMon16:00-17:30Room 4U15

Specific Dates
Final Project Presentation tba 17:00 Room 2222
Final Exam 04.03.2013 9:00 - 12:00 Room 2222
Final Exam (2nd Chance) 25.03.2013 9:00 - 12:00 Room 2222


Mac Lab@RBI

The RBI has a Mac-Lab (Room 4U15) in which you can work on the assignments. You can work there according to the reservation plan. We reserved the lab exclusively for you Wednesdays from 15:00-18:00.


Links


Literature Recommendations

iOS SDK 6:
  • Matt Neuburg - Programming iOS 5 (draft)

iOS SDK 5

iOS SDK 4:

iPhone SDK 3:

COCOA, Objective C:


Previous Courses

GUTech iPhone Specialist Lab, 2011 iPhone Application Development, WS 2010/11 iPhone Application Development, WS 2009/10