So you want to become an iPad, iPhone, or Mac programmer? Excellent! It can be a lot of fun and a valuable skill in today’s market. We have a number of books and screencasts to help you, whether you’re new to the platform or an experienced developer.

NEW!

Ready to tackle the new iPad? If you know the iPhone, we’ve got the first and best book on programming the iPad that concentrates on this new devices’ unique capabilities. See iPad Programming for details.

What You Need

When you’re just starting out, you’re faced with learning a bunch of new things: Xcode, Interface Builder, the Objective-C programming language, the Cocoa libraries, and the iPhone or iPad SDK.

Below you’ll find a roadmap of our iPad, iPhone, and Mac resources. You can use it to figure out where you should start and when you are ready for the next level.

Beginnings

Foundations

Essentials

Capabilities

Cover Image For Beginning Mac Programming...
Cover Image For Cocoa Programming...
Cover Image For Coding in Objective-C 2.0...
Cover Image For Becoming Productive in Xcode...
Cover Image For iPad Programming...
Cover Image For iPhone SDK Development...
Cover Image For Writing Your First iPhone Application...
Cover Image For Core Animation for Mac OS X and the iPhone...
Cover Image For Creating a Compelling User Interface with Core Animation...
Cover Image For Core Data...
Cover Image For Programming Cocoa with Ruby...
If you are:

New to Programming

Cover Image For Beginning Mac Programming... Writing an iPad, iPhone, or Mac OS X application is an exercise in programming. Most of the books and screencasts assume that you have a programming background in a “curly brace” programming language (C, C++, C#, Java, Ruby, etc.) and that you’re familiar with object-oriented programming in general. If you’re new to programming, start with this book:

Introduces you to Objective-C and the Cocoa framework in clear, easy-to-understand lessons, and demonstrates how you can use them together to write for the Mac, as well as the iPhone and iPod.

What you need next: Objective-C

New to Objective-C or Object-Oriented Programming

Cover Image For Coding in Objective-C 2.0... iPhone and Mac OS X applications are written in the Objective-C programming language. It’s an object-oriented language. If you have a programming background, but you’re new to the Objective-C language or object-oriented programming in general, start with the Coding in Objective-C screencasts: These screencasts will quickly walk you through all the major features of the Objective-C language and the core concepts of object-oriented programming.

What you need next: Xcode, Cocoa

New to the Xcode IDE

Cover Image For Becoming Productive in Xcode... Xcode is the IDE used for Mac OS X programming. There’s a lot you can do with Xcode, and it’s easy to get distracted by all the knobs and levers. If you’re seeing Xcode for the first time, or wish you were more productive in Xcode, check out the Becoming Productive in Xcode screencasts: By learning how to use Xcode in a truly productive way, you’ll spend less time being frustrated and have more time to focus on your application.

What you need next: Cocoa

New to Cocoa

Cover Image For Cocoa Programming... Cocoa is a set of Objective-C frameworks (libraries) for developing Mac, iPad, and iPhone applications. If you’re feeling comfortable with Objective-C, but you’re new to Cocoa, start with the Cocoa Programming book: This will give you a better understanding of Cocoa fundamentals and Interface Builder, which are equally applicable to iPhone programming.

What you need next: iPhone SDK, iPad programming

Getting started with the iPhone

Cover Image For Writing Your First iPhone Application... Once you’re comfortable with Objective-C, Cocoa fundamentals, and the toolset, then you’re ready to step up to iPhone development. Start by watching the free Getting Started with Xcode and Interface Builder screencast episode, downloadable from this page: It walks you through how write a simple iPhone application using Xcode and Interface Builder. You’ll see familiar Objective-C and Cocoa code along the way. You’ll also get an overview of what iPhone development is all about.
 
Cover Image For iPhone SDK Development... If you’re feeling confident about what you’re seeing in the free iPhone screencast episode, then you’re ready for the iPhone SDK Development book: And check out the rest of the Writing Your First iPhone Application screencasts as a companion to the book as well.

What you need next: iPad programming, Core Animation, Core Data

Moving from the iPhone to the iPad

Cover Image For iPad Programming...

If you’re experienced at the basics of iPhone programming, you need to know what’s different in the iPad—and there’s a lot new to learn here.

iPad Programming shows you how to write iPad apps right away using a combination of the familiar iPhone APIs along with the new APIs and additional templates designed specifically for creating iPad applications.

Ready for More Advanced Topics: Core Animation and Core Data

Cover Image For Core Animation for Mac OS X and the iPhone...
Cover Image For Creating a Compelling User Interface with Core Animation...
Core Animation adds that “wow!” factor to your Cocoa and iPhone applications. It’s not just cool, it also improves the user experience to make your application a cut above the rest. Core Animation is a fairly advanced topic. You’ll need a good foundation of Cocoa to get the most out of it. The book and screencasts compliment each other well:
Cover Image For Core Data... Core Data is an API for persisting data in Mac applications. It’s also a fairly advanced topic. The book takes you from beginning with Core Data through to expert level configurations that you will not find anywhere else.

Using Ruby Instead of Objective-C

Cover Image For Programming Cocoa with Ruby... Of course, you don’t need to use Objective-C to write your Cocoa applications for Mac OS X (desktop only; not for iPad or iPhone). Our Ruby Cocoa book introduces Rubyists to writing first class Cocoa applications in their favorite language.