It goes through step by step and explains how the OO terms you know map from C++ to Objective-C, e.g., "If you want to declare a static class method, you use this syntax..." If you're familiar with OO in general it's pretty good, too.
It really lowers the Objective-C syntax hurdle, IMO.
I was trying to follow along with the Stanford course but found myself lost early on. Do you think the Cocoa Programming book covers enough Objective C / OOP basics for a beginner?
The preface of the book says 'This book is written for programmers who already know some C programming and something about objects'. I'm not a strong coder, but it has been great in getting me started and teaching exactly how Objective C / Xcode / interface builder work together to create an application. I bought the book but if you want to have a quick flick through the older second edition before purchasing the someone has it on rapidlibrary.com.
It probably took about 40 hours to feel comfortable with objective C and the cocoa touch APIs. I still have to refer to the SDK docs. I didn't have any prior experience with Obj-C.
Sadly, I believe the difference between being able to write a simple iPhone app quickly (say tables, pulling data, 8 hours, knowing IB and what methods to hook) and slowly (constantly googling, checking XCode docs, StackOverflow, wondering about memory management) is simply months of experience (which will vary depending on time invested). There are ways, of course, to become better faster but I think it almost has to become mind memory (like muscle memory) where you know how to do certain things near automatically. Until then, frustration can be du jour.
My friend who has been lucky enough to get a job doing Cocoa development (without knowing Objective-C/Cocoa) has taken about six months to become proficient (and he still has trouble - and when he pair-codes with excellent Cocoa programmers - just tries to not get in the way).
I stopped a while ago but will restart - I'm still very much on that learning curve.
It goes through step by step and explains how the OO terms you know map from C++ to Objective-C, e.g., "If you want to declare a static class method, you use this syntax..." If you're familiar with OO in general it's pretty good, too.
It really lowers the Objective-C syntax hurdle, IMO.