‘Programming Mac OS X’ by Kevin O’Malley
This text is an introduction to the world of Mac OS X software development. While it’s primarily aimed at UNIX developers wanting to develop for Mac OS X, the book does not require any previous programming knowledge and should be suitable for anyone interested in software development on Mac OS X.
Contents
The book is divided into the following chapters:
- Welcome to Mac OS X
- Navigating and using Mac OS X
- Project Builder and Interface Builder
- Development Tools
- Objective-C and the Cocoa development frameworks
- Cocoa programming
- AppleScript programming
- Mac OS X and beyond
For a full table of contents, please visit the book’s page at Manning’s website. ‘Programming Mac OS X’ is divided into three parts. The first covers the Mac OS X architecture and usage, with topics ranging from help systems and the Finder to process management and user accounts. These chapters are filled with small useful pieces of information for any new Mac OS X user.
The next part introduces the Mac OS X developer tools, starting with ProjectBuilder and InterfaceBuilder, and moving on to tools like AppleScript Studio, gprof, leaks, and MallocDebug. All the Apple developer tools are, however briefly, covered in this chapter.
The third and final portion of the book covers practical Mac OS X programming. It starts with a discussion of the Cocoa infrastructure and the various languages available for Cocoa developers. Chapter 6 then continues with a tutorial on Objective-C using Cocoa. In the tutorial O’Malley describes the process of creating a Cocoa application working as a GUI front end to the UNIX utility wget. The tutorial goes though all the necessary steps in the development process, but the learning curve is pretty steep and not all the source code is listed. The former might be somewhat of a problem for readers with no previous C programming knowledge. While there is no CD accompanying this book, all the source code examples are available as a free download from Manning’s website. Chapter 7 is dedicated to Apple’s scripting language AppleScript, with various small examples and guides. Both standard and Cocoa-based AppleScript are covered alongside the fundamentals of the language.
The book ends with Chapter 8: “Mac OS X and beyond”, which discusses more advanced Project Builder features such as inline scripting and how to use different compilers. The chapter finishes with an example of how to use Perl with Objective-C and Cocoa.
Four appendices are included, in this order: “Getting and installing development tools,” “UNIX and Mac OS X command mappings,” “The precursor of Mac OS X: Mac OS” and “A brief history of UNIX”. The titles should be quite self-explanatory of the contents. Like the rest of the book, the appendices contain a lot of useful information and are definitely worthwhile reading.
Final Thoughts
‘Programming Mac OS X’ is written for developers with a UNIX background in mind and therefore concentrates hard on subjects such as command-line tools and scripting. The fact that the book does cover these topics make me believe that it would also be useful for a lot of beginner Mac OS X developers interested in the underlying UNIX core of Mac OS X.
Readers new to Mac OS X development will certainly find a lot of interesting information in this book, which is well written, up to date, and doesn’t have the mistakes and errors common in most computer literature. O’Malley has a light writing style that makes the book fun to read and easy to follow. If you are new to Mac OS X development, it’s definitely money well spent.
Developers already familiar with the Mac OS X developer tools and Cocoa should think twice before buying this book, as the primary objective of the text is to introduce you to the Mac OS X environment and then get you started with Cocoa. The chapter on Cocoa/Objective-C programming, while very good, is nothing more than a warm-up tutorial to get you started with Interface Builder and the Cocoa framework. For those of you just interested in learning Cocoa, I would recommend getting a full-fledged Cocoa book such as ‘Cocoa Programming for Mac OS X’ by Aaron Hillegass, or ‘O’Reillys Learning Cocoa with Objective-C, 2nd’.
Related Books:
- ‘Step into Xcode : Mac OS X Development’ by Fritz Anderson
- ‘Beginning Xcode’ by James Bucanek
- ‘Advanced Mac OS X Programming’ by Mark Dalrymple, Aaron Hillegass
programming,macosx,omalley





Since 1998, iDevGames has been educating, supporting and enhancing the community of game developers that develop video games for Mac OS X & iPhone. Subscribe to our