Skip to Content
Cocoa in a Nutshell
book

Cocoa in a Nutshell

by Michael Beam, James Duncan Davidson
May 2003
Intermediate to advanced
566 pages
27h 29m
English
O'Reilly Media, Inc.
Content preview from Cocoa in a Nutshell

How the Quick Reference Was Generated

You’d have to be a madman to write this book’s quick reference by hand. Madmen we are not, so following the example of David Flanagan, author of O’Reilly’s Java in a Nutshell, Mike wrote a program that would take care of most of the tedious work.

The idea is to attack the problem in two stages. In the first stage, the code enumerates each header file of each Framework that is to be ripped (Foundation and AppKit) and runs each line of each header through a parser. This parser would look for key elements that identify parts of the header, such as @interface, + for class methods, - for instance methods, and so forth. Every discovered element was assembled into a cross-linked hierarchy of framework names, class names, or method names. When all headers had been processed, the hierarchy was output into a property list file, which, at the end of the day, weighed in at just over 41,500 lines of text!

Stage two involved reading the contents of this file and running it through several formatting routines that output the XML-formatted text required by the O’Reilly production team.

Each class has a little class hierarchy figure. These figures were autogenerated by drawing into a view (using NSBezierPath) and saving the PDF representation of the view contents to a file. The input data for the program that did all of the drawing was the same property list used to create the API quick reference entries.

Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.

Read now

Unlock full access

More than 5,000 organizations count on O’Reilly

AirBnbBlueOriginElectronic ArtsHomeDepotNasdaqRakutenTata Consultancy Services

QuotationMarkO’Reilly covers everything we've got, with content to help us build a world-class technology community, upgrade the capabilities and competencies of our teams, and improve overall team performance as well as their engagement.
Julian F.
Head of Cybersecurity
QuotationMarkI wanted to learn C and C++, but it didn't click for me until I picked up an O'Reilly book. When I went on the O’Reilly platform, I was astonished to find all the books there, plus live events and sandboxes so you could play around with the technology.
Addison B.
Field Engineer
QuotationMarkI’ve been on the O’Reilly platform for more than eight years. I use a couple of learning platforms, but I'm on O'Reilly more than anybody else. When you're there, you start learning. I'm never disappointed.
Amir M.
Data Platform Tech Lead
QuotationMarkI'm always learning. So when I got on to O'Reilly, I was like a kid in a candy store. There are playlists. There are answers. There's on-demand training. It's worth its weight in gold, in terms of what it allows me to do.
Mark W.
Embedded Software Engineer

You might also like

Pro Objective-C

Pro Objective-C

Keith Lee
More iPhone Development with Objective-C

More iPhone Development with Objective-C

David Mark, Jayant Varma, Jeff LaMarche, Alex Horovitz, Kevin Kim

Publisher Resources

ISBN: 0596004621Errata Page