Course Outline | Introduction to iPhone Development


This five-day workshop is designed to introduce students to writing iPhone applications in the the XCode Integrated Development Environment (IDE), using the iPhone Software Development Kit (SDK).

Who Should Attend

This course is designed for those who wish to learn how to program with Objective-C and build basic iPhone applications using the XCode In. Students will to distribute applications through the iTunes Application Store.

What You Will Learn

  • How to develop Objective-C and iPhone/iPad programs in the XCode IDE
  • How to design graphical user interfaces (GUI) with Interface Builder
  • How to build basic applications using the iPhone SDK
  • How to successfully implement the User Interface Guidelines as defined by Apple
  • How to handle user input and storing data
  • How to create view- and table-based apps
  • How to finalize and upload your app to the iTunes Store.

PrerequisitesStudents should have the following prerequisite knowledge prior to attending the course:

  • Familiarity with object-oriented programming languages and experience with an integrated development environment (IDE).
  • Completed the application process for the iPhone Developer Program. This is necessary to sign and distribute applications. The application can be started at http://developer.apple.com
  • Note: The application fee for the iPhone Developer Program is $99.00.

Course Outline

Day 1 – Objective-C 3.0 Fundamentals


  • Introduction to Objective C and the XCode IDE
  • Define classes and methods
  • Memory management and Reference counting (allocating and deallocating)
  • Messaging and message forwarding
  • Dynamic typing and dynamic binding
  • Inheritance and Introspection
  • Interface, Implementation, and Program sections

Day 2 – Objective-C 3.0 Fundamentals and iPhone OS Fundamentals

TOPICS: Objective-C

  • Objective-C utility classes (numbers, dates, arrays, dictionaries, files, etc).
  • Object Lifecycle and Garbage Collection
  • Categories and Protocols
  • Preprocessor Directives and Enumeration
  • Cocoa Foundation Framework


  • Introduction to iPhone OS, Cocoa Touch, and Interface Builder
  • Introduction to View-Based Apps
  • Cocoa Touch Framework
  • Cocoa Touch Design Patterns (Delegation, MVC, Target-Action)

Day 3 – iPhone OS Fundamentals


  • Anatomy of an Application
  • File’s Owner and First Responder
  • Outlets and IBOutlet
  • IBAction
  • Connecting outlets and actions
  • Memory management with Cocoa Touch
  • In-depth View-Based Apps

Day 4 – iPhone OS Development

  • App Conceptualization and Design
  • App Lifecycle
  • iPhone App Categories, Design Considerations, and Product Definition Statements
  • Apple Human User Interface Guidelines
  • Table Views

Day 5 – iPhone OS Development

  • Coding, Concepts, and Deployment
  • Navigation
  • Persistent data
  • Tab Bars and Pickers
  • Multi-View Apps
  • Application Settings
  • Debugging
  • Publishing to the iTunes Store