Chapter 8. Introduction to Cocoa


  • How to use outlets and actions to connect Cocoa application interfaces to your custom code

  • How to use Cocoa Bindings as an alternative to outlets and actions

  • How Apple uses the Model/View/Controller design pattern to build reusable, extendable classes

People use the word "Cocoa" in different ways to describe different things. For example, Cocoa can refer to the Objective-C programming language and dynamic runtime. In Chapter 7, you learned how to write simple programs in Objective-C. Some of that material, such as object reference counting, is specific to Cocoa.

Cocoa also applies to the Objective-C frameworks and libraries commonly used by Cocoa applications. Two principal frameworks among these include AppKit and Foundation. A few other frameworks seem to be a part of the Cocoa family in one way or another, including the PreferencePanes and WebKit frameworks.

The Foundation framework contains Objective-C objects, protocols, and functions that are useful to Mac OS X programs in general, regardless of whether they are meant to be user-friendly applications or low-level system utilities. For example, things such as collection classes, file I/O, and memory utilities are defined in Foundation. Also, some functionality commonly thought of as high-level application functionality lives in Foundation because it doesn't involve any user interface (UI). The management of both undo and user preferences are part of Foundation. ...

Get Beginning, Mac OS® X Snow Leopard™ Programming now with O’Reilly online learning.

O’Reilly members experience live online training, plus books, videos, and digital content from 200+ publishers.