Summary:
Learn to write apps for some of today's hottest technologies, including the iPhone and iPad (using iOS), as well as the Mac (using OS X). It starts with Objective-C, the base language on which the native iOS software development kit (SDK) and the OS X are based. Learn Objective-C on the Mac: For OS X and iOS, Second Edition updates a best selling book and is an extensive, newly updated guide to Objective-C.

Objective-C is a powerful, object-oriented extension of C, making this update the perfect follow-up to Dave Mark'''s bestselling Learn C on the Mac. Whether you'''re an experienced C programmer or you'''re coming from a different language such as C++ or Java, leading Mac experts Scott Knaster and Waqar Malik show how to harness the power of Objective-C in your apps!

GDNet Staff Review:
Longtime C++ programmers such as myself suffer from a pretty significant conceptual hurdle when moving to Apple's recommended application development tools and languages. And while Objective C was once rather easy to ignore, the big market share now owned by Apple's "Cocoa" object model as it applies to Mac OS X and iOS has suddenly made Objective C much more of a player than it used to be. And while you can still develop apps for these devices using technologies more familiar to Windows/Linux and C++ developers, the large majority of Mac and iOS apps that really have a "first class" experience on Apple's platforms are built using their recommended tools and class libraries.

And Learn Objective C on the Mac is intended to be just the thing for people like myself who are fully versed in programming, but not in Objective C. And going from your curly-brace C dialect of choice to Objective C is not as straightforward as it looks. Objective C is not just C++ with a slightly different syntax. Objective C is a thing originally designed in the 1980's intended to bring the performance of C together with the pure object-oriented goodness of Smalltalk.

Or, more succinctly, it is weird.

As Yoda has told you, you first must unlearn what you have learned. And not only that, but you must unlearn it from a pretty low level. Not only are you learning a new and unfamiliar language, you also need to couple it with mature-yet-unfamiliar UI building tools, class library, and an IDE that is just different enough from Visual Studio to completely screw you up at every turn.

Learn Objective C on the Mac is written by longtime users of Apple's programming model, and they do a very good job of getting you up to speed without bogging you down in the language features you already know (hint: if-statements are the same) or OO concepts you should already understand.

There are loads of "How to build an app with Objective C and/or Cocoa" books that are intended to get a reader up to speed on Apple's toolchain, but this is the first one I have found that concisely covers the stuff I did not already know without presenting me with a lot of stuff I already did. It seemed like every time I saw a new piece of code with a "what the heck is that" construct, the book followed with a good explanation.