The Text At A Glance
Aaron has a great, teaching-writing style. You definitely get the feel of being in the classroom, learning right from the professor. The preface makes at least two, fairly substantial claims. First, that the nook covers the Objective-C language, Cocoa design patterns and how to use Xcode, Interface Builder and Instruments. And, second, that you will learn 80% of what you need to know to get started programming for the Mac. I have to agree with both claims as you will definitely learn a great deal of the fundamentals of the language and tools and that the book can be used as a reference post-read.
This third edition has been updated to cover Leopard-only technologies (such as garbage collection and Objective-C 2.0) and does a decent job showing where to utilize the new language features and delves into the depths of intricacies of the new memory management facilities in Leopard (and how to code for both Tiger & Leopard). Covering tools like gdb and Instruments is an amazing thing to do, since many programmers are still rely solely on printf or (in the case of Mac programming) NSLog.
The sample applications range from trivial to pretty neat & indicative of real-world Mac programming, error-logic and all. I especially like the challenges in the exercises, many of which have you modify example code, sometimes accompanied by the mantra: “This is hard, and you are not stupid.”
If you are interested at all in programming for OS X or have programmed for the Mac and want to pick up some hints on how code specifically for features in Leopard, Aaron’s books is a must-buy. I’d definitely recommend keeping all of Apple’s updated Objective-C 2.0 information handy as it will fill in the 20% Aaron doesn’t cover and go a bit deeper as well.