Book Review: "Xcode 3 Unleashed,"
by Fritz Anderson
Volume Number: 24
Issue Number: 11
Column Tag: Book Review
Book Review: Xcode 3 Unleashed,
by Fritz Anderson
Rev up your Xcode-fu
by Edward Marczak
Xcode 3 Unleashed fills a unique niche in the Macintosh development world. It doesn't aim to teach coding per se, but you'll probably pick up some new techniques by reading the book. Nor does it aim to teach Cocoa or Objective-C, but you'll see plenty. Xcode 3 Unleashed (X3u) is just that: an exposé on Xcode, Apple's free development environment for OS X. As a freely available system, Xcode may be a touch under-documented, or, perhaps, not documented in a manner conductive to learning about each of its many facets. X3u solves that.
X3u is divided into 2 main parts, with part 3 containing appendices. The first part is meant to be read sequentially, and leads the reader through writing a sample application using Xcode. The application starts as a simple command-line tool, and by the end of the section is an advanced GUI application that has a command-line helper and relies on a custom framework library. Each step demonstrates a clear how-to using the Xcode IDE. My favorite part of the first section is how early Fritz introduces version control-using subversion-gives every reason why it's critical to use version control, and then integrates the use of subversion into Xcode and the following examples.
The second part can be read sequentially or used as a reference. This section gets deeper into concepts and commands presented into the first section, and pulls the covers back a little further. Here, Fritz presents details on how Xcode and Interface Builder work most of their magic, blending open source components and Apple supplied tools and glue.
In part 1, which encompasses chapters one through 19, X3u: shows how to launch Xcode and write and build a "Hello, World!" application (chapter 1), shows how to use Xcode's integrated debugger (chapter 3), explains what happens during a compile and build (chapter 4), introduces version control (chapter 8), details property lists (chapter 9), creates a library for the sample project (chapter 10), explains how to write unit tests for your application using the SenTestingKit framework (chapter 12), details documentation-both Xcode-wise and for purposes of documenting your source (chapter 15), explains how to target different architectures (chapter 17) and more.
As mentioned, part 2-chapters 20 through 27-refine the lessons taught in part 1 and also go deeper into Xcode and Interface Builder. Chapter 20 opens with details about Xcode that will make your job easier, and knowledge greater. It touches on Code Sense and indexing, Code Focus, gives a closer look at the Groups and Files list in the editor window and more. From there, chapter 21, "Xcode for make Veterans," and chapter 24, "A Legacy Project," takes an open source application and shows how to build an Xcode project from the download's Makefile and other files (practically worth the price of the book alone). Part 2 continues on with: more on debugging (chapter 22) and more ways to introspect and improve an application using Apple supplied tools such as Shark and CHUD (chapter 25) and Instruments (chapter 26).
Simply, Xcode 3 Unleashed is for anyone that uses Xcode. The reader learns the rhythm of the development cycle of an OS X application developed with Xcode. Fritz's knowledge and experience is clear. The writing, presentation and editing are all excellent. Each chapter is tightly focused and concise. X3u targets Xcode 3, but does not solely target OS X Leopard, v10.5. Fritz does, however, always point out where there would be a difference in doing so. In short, there's something for everyone, no matter their level, beginner or long-time Xcode user, and belongs in every OS X or iPhone developer's library.
Title: Xcode 3 Unleashed
Author: Fritz Anderson
Publisher: Sams
Price: $44.99 USA
ISBN-13: 978-0-321-55263-1
On the web: http://www.informit.com/title/9780321552631
Ed Marczak is the Executive Editor for MacTech Magazine, and has been lucky enough to have ridden the computing and technology wave from early on. From teletype computing to MVS to Netware to modern OS X, his interest was piqued. He has also been fortunate enough to come into contact with some of the best minds in the business. Ed spends his non-compute time with his wife and two daughters.