Programming the iPhone 101
Instructor: Chandler McWilliams
July 5th & 12th, 2009 from 12-4pm
July 8th & 16th, 2009 from 7-10pm
Sorry, this class is SOLD OUT. Email firstname.lastname@example.org to get on the waitlist for a future session.
Learning to program for the iPhone can be a daunting challenge. A new language, a new development environment, new hardware, and new ways of thinking all before you have a working app. This four session workshop will get you up and coding quickly so you can learn the intricacies of creating applications for iPhone by diving right in and doing it. We’ll cover the basics of Cocoa Touch, Apple’s framework for creating applications for the iPhone and iPod Touch, become familiar with objective-c, learn to use Apple’s XCode and Interface Builder development tools, learn how to use the built-in application templates, and how to access features like GPS and the accelerometer.
Chandler McWilliams is currently the technical editor for O’Reilly’s forthcoming book “iPhone User Experience” and is writing a book with Casey Reas titled: “FORM + CODE in design, architecture, and art”, due out next year on Princeton Architectural Press as part of the Design Brief series.
You must have an Apple computer running the latest Mac OSX (Leopard Mac OS X 10.5.5 or higher) with the latest iPhone SDK installed. If you do not have the SDK, please go to http://developer.apple.com/iphone and register for free to download the SDK. Please note that the SDK is a rather large download, so please install it before the beginning of the workshop to save yourself time.
Building applications on the iPhone requires some knowledge of the Objective-C programming language. We’ll cover this in the workshop, but prior programming knowledge is HIGHLY recommended, and a working familiarity with objects and Object-Oriented Programming will be very helpful.
Cocoa Touch Overview
What is Cocoa Touch
Tour of the IDE
What goes where
Using a GUI to make a GUI
First look at Objective-C
How Objective-C is NOT normal
Cocoa and MVC
Creating a controller
Create a View
Connecting to the View
A look at the standard user interface elements
Working with text
Working with sheets
Creating a more advanced app using App templates
Creating a Tab bar-based app
Intro to table views
App templates continued
Creating a Navigation-based app
How navigation works
Table views in navigation based apps
Working with WebViews
Using Location services
Using the Accelerometer
Using the Camera
Testing your app on the iPhone or iPod Touch