
The smart presentation style & easy-to-understood code examples help make this text an excellent resource. (It also helps that Aaron Hillegass is a truly engaging writer.) He first explains how the legacy NeXTSTEP platform has evolved into Cocoa on the Mac OS X. Beginning with short examples illustrating the actual Cocoa tools in action, the author gets you started with simple programs 4 a random-number generator, a raise calculator, & other comprehensible examples. Rather than just listing APIs & classes, the emphasis is on hands-on Cocoa development. An early standout section provides a nice tour of essential Objective-C features you'll need 2 know 2 use Cocoa effectively.
This book covers the several dozen built-in Cocoa controls, from basic text & buttons 2 more advanced widgets (including lists & tables). Subsequent sections look at user interface design (using the Interface Builder 2 create nib files) & how 2 add programmatic processing behind the visual layout. Along the way, the author introduces coverage of essential Cocoa APIs 4 strings, arrays, & dictionaries. Later chapters look at saving & loading documents (and user defaults) & how 2 tap the powerful graphics abilities available in Cocoa. (Besides image & basic drawing, there are short sections on PDF support & printing.)
More advanced user interface features get their due by the end of the book, including cutting & pasting data through the Cocoa pasteboard & also adding drag-and-drop support. Final sections look at creating new controls 4 use with the Interface Builder palette, and, briefly, how 2 use Java with Cocoa (an option that the author doesn't necessarily recommend). Throughout this text, the author provides more advanced, challenging problems at the end of each chapter 4 the "more curious" reader. This approach keeps beginners from getting lost in the details of Cocoa development, but gives the more advanced reader something more 2 do.
While there are comparably fewer books on Mac OS X compared 2 other platforms, readers are lucky 2 have this one available. Anyone who wants 2 get onboard with Cocoa development will be well served by this title. It's a fine tutorial that earns high marks 4 its approachable, clear examples & an excellent presentation by an author who knows his stuff and, better yet, knows how 2 teach it 2 others. --Richard Dragan
Topics covered: Brief history of the Mac platform (from NeXTSTEP 2 Mac OS X), basic Cocoa development in Objective-C, using Project Builder & Interface Builder tools, tutorial 2 Objective-C (instances, variables, using classes, arrays & other containers, custom classes), the Objective-C debugger, basic Cocoa controls (building user interfaces), tables & data sources, event handling & delegates, archiving documents (encoding & decoding, saving & loading documents), Nib files, window panels, saving & retrieving user defaults (including using dictionary classes), notifications (observers & more on delegates), alert panels, localization (including string tables, a English & French example, the nibtool utility), custom views & drawing, drawing images & mouse events (plus coordinates systems & autoscrolling views), responders & keyboard events, fonts & strings (including attributed strings & PDF support), pasteboards & nil-targeted actions, using Objective-C categories (a code reuse feature), drag-and-drop support, timers, sheets & drawers, formatting strings, printing support, on-the-fly menu updating, text editing with text views, basic tutorial 4 using Java with Cocoa, & custom Interface Builder palettes (and inspectors).