More than two years ago we reviewed the first edition of the excellent book by Aaron Hillegass, “Cocoa Programming for Mac OS X”. The second edition has just being released and we will be taking a quick look as to what’s new.There is not much point going into depth as most of the book is very similar to the first edition, which is already reviewed. However, we did spot many clean ups in the way the text is layed out. A lot of additions/correction in the midst of past content has being added too as the Mac OS X API has evolved since then. For example, our main gripe in the previous book was the minimal information on the debugger, and the updated content has now some added information. The same is true for other places throughout the book making it now feel richer and more ‘mature’ somehow (which is probably because the API itself is now more mature than it used to be and the use of XCode throughout the book makes things simpler).
Additionally, all screenshots have being re-worked to present 10.3 Panther-derived shots throughout the book.
The new book includes five new chapters: adding capabilities to your app using NSUndoManager, Applescript, OpenGL on Cocoa, reusable frameworks and a chapter for the introduction to GNUstep.
The chapter for Applescript is also an introduction to the script language which can be very handy and useful in the design of an application, the OpenGL chapter is a bit short on details but if you already have some experience with 3D programming it should be enough to get you started. There is an interesting tidbit about prebinding on chapter 30 as well.
Regarding the GNUstep chapter it goes through how to install it and setup some of its tools but that chapter is really too short. The GNUstep guys say that if you want to design an app that’s going to work on both Cocoa and GNUstep, you need to start writing it on GNUstep and then “port” it to Cocoa. The other way around is not going to work well because GNUstep doesn’t have implemented most of Cocoa’s API. So, some pointers of what frameworks/functions to use and what to avoid when targetting portability should have being interesting in the current book.
Other than that, this is as good as the first book and it is a recommended buy for all OSX programmers. The writing is definately enjoyable and Aaron proves again to be a great teacher.
On another note, DevChannel published an excerpt from the book, you can read it here.
Buy “Cocoa Programming for Mac OS X, Second Edition“