Neither book is a good starting point, 2009-04-19
Reviewer rating:
Both the current books on iPhone development fail to provide an "introduction" to development as I'd call it. Both books (this one, and Beginning iPhone Development by Mark and LaMarche) say, right up front something akin to "the Apple approved and easy way to write for the iPhone is to use Interface Builder, but we're going to start you off with the harder, hand-coded way, so you'll learn the guts of how it works."
Really bad idea. Delegates, controllers et al are different enough without throwing unnecessary hand-coding at the novice first. Further, in both books, the code is usually "just presented" (here: type this) with only modest followup as to what you've just entered actually does and where it fits into a larger picture.
Now it's obvious that I'm new to Xcode and iPhone, but I'm not new to programming per se: I started coding in 1978. I'm also a teacher, and can say that both these books represent the "jump into the lake and while you're gasping for air, I'll teach you how to swim" approach.
The beginner would have been far better served with the inclusion of Interface Builder right up front. That would help understand the whole paradigm used by the frameworks and how it implements MVC.
Once that was understood, -then- is the time to go back and say "... and this is how we hand code that..." - once the basic understanding and overview was in place in the reader's mind.
I'm even monitoring the Stanford class... and what I can say is that between that, and two books, and constant re-reading, I've finally managed to extract the conceptual overview needed to understand WHY thing are done, which any programmer needs to understand to write good, efficient code.
Copy/paste doesn't teach programming. It's like teaching "turn screwdriver clockwise to set screw" first, and expecting that to lead to carpentry skills.
It's a common problem when experts teach, and is why teaching is a profession unto itself.
I've figured it out.. and am still learning... but I should not have to "reverse engineer" it all to learn to do it.
In sum then: at least if you're starting from where I started, get everything you can find on iPhone programming - one book alone won't cut it.