Jump To:
Leopard Reference Library: Cocoa
Design guidelines offer fundamental rules and tips to help developers make sound design decisions when they are developing Cocoa programs. Also included are explanations of basic architectures, paradigms, and design patterns that are important for all Cocoa developers to understand.

Document Descriptions
On Off
Display

Sort by
Title
Sort by
Resource Type
Sorted by
Date
Key-Value Observing Programming Guide (HTML) (PDF)
Explains the Cocoa key-value observing protocol.
Guides 2009-05-06
Memory Management Programming Guide for Cocoa (HTML) (PDF)
Explains how to allocate and deallocate objects in Cocoa.
Guides 2009-05-06
NSError Class Reference (HTML) (PDF)
Describes a representation of a runtime error.
Reference 2009-05-06
Predicate Programming Guide (HTML) (PDF)
Describes how to specify queries in Cocoa.
Guides 2009-05-06
NSDictionary Class Reference (HTML) (PDF)
Describes an immutable collection of key-value pairs.
Reference 2009-04-08
Cocoa Bindings Programming Topics (HTML) (PDF)
Explains how to rapidly develop sophisticated user interfaces using Cocoa binding technology.
Guides 2009-03-08
Core Data Programming Guide (HTML) (PDF)
Explains how to manage objects using the Core Data framework.
Guides 2009-03-04
Core Data Utility Tutorial (HTML) (PDF)
A hands-on guide to creating a command-line utility using low-level features of Core Data.
Guides 2009-03-04
Error Handling Programming Guide For Cocoa (HTML) (PDF)
Describes NSError objects, related Application Kit support for error handling, and how to use these features in your code.
Guides 2009-03-04
64-Bit Transition Guide for Cocoa (HTML) (PDF)
Explains how to port Cocoa projects to 64-bit addressing.
Guides 2009-03-03
Key-Value Coding Programming Guide (HTML) (PDF)
Conceptual information about how to access a Cocoa object's values using keys.
Guides 2009-02-04
NSKeyValueCoding Protocol Reference (HTML) (PDF)
Describes the interface for accessing object properties indirectly by key name or key path.
Reference 2009-02-04
NSObject Class Reference (HTML) (PDF)
Describes the Cocoa root class.
Reference 2009-02-04
NSPersistentDocument Core Data Tutorial (HTML) (PDF)
Step-by-step instructions for building a simple but functionally rich application using NSPersistentDocument and Cocoa bindings.
Guides 2009-02-04
NSPersistentDocument Core Data Tutorial for Mac OS X v10.4. (HTML) (PDF)
Deprecated - Step-by-step instructions for building a simple but functionally rich application using NSPersistentDocument and Cocoa bindings.
Guides 2009-02-04
Xcode Design Tools for Class Modeling (HTML) (PDF)
Describes the Xcode Design Tools for Class Modeling.
Guides 2009-02-04
Document-Based Applications Overview (HTML) (PDF)
Explains how to design and implement Cocoa applications that manage multiple documents.
Guides 2009-01-12
NSDocument Class Reference (HTML) (PDF)
Describes the interface for managing content using Cocoa's document system.
Reference 2009-01-06
NSObject Protocol Reference (HTML) (PDF)
Describes the interface used to define basic object behavior.
Reference 2008-12-22
Cocoa Fundamentals Guide (HTML) (PDF)
Introduces the basic concepts, terminology, architectures, and design patterns of the Cocoa frameworks and development environment.
Guides 2008-11-19
Garbage Collection Programming Guide (HTML) (PDF)
Describes the garbage collection system for Cocoa.
Guides 2008-11-19
Object-Oriented Programming with Objective-C (HTML) (PDF)
Describes object-oriented programming from the perspective of an Objective-C developer.
Guides 2008-11-19
NSDocumentController Class Reference (HTML) (PDF)
Describes an object for managing documents.
Reference 2008-10-15
Squiggles (HTML) (DMG) (ZIP)
Demonstrates many Cocoa fundamentals in a Document-based Application featuring custom drawing and event-handling.
Sample Code 2008-08-29
Runtime Configuration Guidelines (HTML) (PDF)
Conceptual and reference information for dynamically configuring your software.
Guides 2008-07-08
Apple Human Interface Guidelines (HTML) (PDF)
Introduces the Mac OS X user experience and explains how to design an application for Aqua.
Guides 2008-06-09
NSDictionaryController Class Reference (HTML) (PDF)
Describes a Cocoa bindings-compatible manager of a dictionary.
Reference 2008-06-05
Xcode Unit Testing Guide (HTML) (PDF)
Explains how to incorporate test cases to validate individual units of source code.
Guides 2008-05-02
Cocoa Scripting Guide (HTML) (PDF)
Explains how to create scriptable Cocoa applications that use the scripting definition (sdef) format.
Guides 2008-03-11
Common mistakes with delegation in Cocoa (HTML)
QA1554: The two most common errors that lead to a delegate method not being received.
Technical Q&As 2008-02-27
Model Object Implementation Guide (HTML) (PDF)
Describes issues relating to the design and implementation of model objects
Guides 2008-02-08
NSPersistentDocument Class Reference (HTML) (PDF)
Describes a document that integrates with the Core Data framework.
Reference 2008-02-08
Connecting the Font Menu in Interface Builder 3 (HTML)
QA1571: How to connect and configure the Font/Format menus in Interface Builder 3.
Technical Q&As 2008-01-21
With and Without Bindings (HTML) (DMG) (ZIP)
Illustrates the adoption of Cocoa Bindings and refactoring using a subclass of NSArrayController.
Sample Code 2008-01-04
NSObjectController Class Reference (HTML) (PDF)
Describes a Cocoa bindings-compatible manager of an object.
Reference 2007-12-11
Application Kit Release Notes (10.5) (HTML)
New document that describes new features, notes, and known issues for the Application Kit Framework on Mac OS X v10.5.
Release Notes 2007-10-31
Carbon-Cocoa Integration Guide (HTML) (PDF)
Explains how to use both Carbon and Cocoa in developing an application.
Guides 2007-10-31
Foundation Release Notes (HTML)
Describes new features, notes, and known issues for the Foundation framework in Mac OS X v10.5.
Release Notes 2007-10-31
NSKeyValueObserving Protocol Reference (HTML) (PDF)
Describes the interface for receiving notifications of changes to object properties.
Reference 2007-10-31
Ruby and Python Programming Topics for Mac OS X (HTML) (PDF)
Describes Ruby and Python on Mac OS X, and especially the bridges between them and Objective-C and OSA (AppleScript).
Guides 2007-10-31
BundleLoader (HTML) (DMG) (ZIP)
Demonstrates how to load multiple Cocoa bundles or NSBundles (also known as plug-ins) into the main NSApplication.
Sample Code 2007-09-21
SimpleCocoaApp (HTML) (DMG) (ZIP)
A basic Cocoa application for beginners to Cocoa and Objective-C.
Sample Code 2007-08-07
NSValueTransformer Class Reference (HTML) (PDF)
Describes a Cocoa-bindings compatible interface for transforming value representations.
Reference 2007-07-24
Cocoa Application Tutorial Using Bindings (HTML) (PDF)
A hands-on introduction to Cocoa bindings.
Guides 2007-07-10
User Interface Validation (HTML) (PDF)
Explains how to use the standard mechanism to validate user interface items in Cocoa.
Guides 2007-07-10
TrackBall (HTML) (DMG) (ZIP)
Demonstrates how to build a custom control based on the NSControl class.
Sample Code 2007-06-07
PrefsPane (HTML) (DMG) (ZIP)
A Cocoa sample System Preferences bundle that demonstrates how to use the NSPreferencePane class.
Sample Code 2007-06-06
Spotlight Overview (HTML) (PDF)
Introduces the main components and services of Apple's metadata technology.
Guides 2007-05-27
Notification Programming Topics for Cocoa (HTML) (PDF)
Explains how to send and receive information about events in Cocoa programs.
Guides 2007-05-03
NSTreeController Class Reference (HTML) (PDF)
Describes the class that is used with Cocoa bindings to manage a tree of objects.
Reference 2007-04-10
NSArrayController Class Reference (HTML) (PDF)
Describes a Cocoa bindings-compatible manager of an array or set.
Reference 2007-04-09
NSController Class Reference (HTML) (PDF)
Describes the interface for controllers used with Cocoa bindings.
Reference 2007-04-02
NSErrorRecoveryAttempting Protocol Reference (HTML) (PDF)
Describes the interface for attempting recovery from runtime errors.
Reference 2007-02-23
NSMutableDictionary Class Reference (HTML) (PDF)
Describes a changeable collection of values that are identified by keys.
Reference 2007-02-23
TwoManyControllers (HTML) (DMG) (ZIP)
How to use an intermediate NSArrayController to populate an NSTableView across two to-many relationships.
Sample Code 2007-02-23
Accessibility Programming Guidelines for Cocoa (HTML) (PDF)
Explains how Cocoa applications make their user interface available to external assistive applications.
Guides 2007-02-08
Cocoa_With_Carbon_or_CPP (HTML) (DMG) (ZIP)
Shows how to call Carbon routines and C++ code from within an Objective-C Cocoa program.
Sample Code 2007-02-05
Leopard Technology Series for Developers: Leopard Developer Application Technologies Overview (HTML)
Learn how Leopard will help you create powerful and innovative features for your users.
Articles 2006-12-07
Application Architecture Overview (HTML) (PDF)
Explains the architecture of a Cocoa application and how it interacts with the operating system.
Guides 2006-08-07
Application Kit Release Notes (10.4 and Earlier) (HTML)
Release Notes 2006-07-17
NSCopying Protocol Reference (HTML) (PDF)
Describes the interface for providing immutable duplicates of objects.
Reference 2006-05-23
NSMutableCopying Protocol Reference (HTML) (PDF)
Describes the interface for providing mutable duplicates of objects.
Reference 2006-05-23
NSWindowController Class Reference (HTML) (PDF)
Describes an object for controlling a window that is usually stored in a nib file.
Reference 2006-05-23
Coding Guidelines for Cocoa (HTML) (PDF)
Naming guidelines for Cocoa API and design advice to framework developers.
Guides 2006-04-04
Designing Network-Friendly Applications (HTML)
Learn to make your application management-aware and reliably accessible on a network.
Articles 2005-10-24
BindingsJoystick (HTML) (DMG) (ZIP)
Illustrates a bindings-enabled subclass of NSView.
Sample Code 2005-06-01
Tiger Developer Overview Series: Developing with Core Data (HTML)
Learn to use Core Data to define your application's data model graphically.
Articles 2005-04-04
CFBundleIdentifier and user application access (HTML)
QA1373: Describes the role of CFBundleIdentifier in limiting a user's application access.
Technical Q&As 2005-02-08
Binding your Preferences in Cocoa (HTML)
Learn to use bindings by creating a simple app.
Articles 2004-04-26
Ensuring Backwards Binary Compatibility - Weak Linking and Availability Macros on Mac OS X (HTML) (日本語 HTML)
TN2064: Ensuring that Mach-O applications built using today's Mac OS X runs on previous versions of the OS.
Technical Notes 2003-02-18
Undo Architecture (HTML) (PDF)
Explains how to record information in Cocoa so a user can reverse an operation's effect.
Guides 2002-11-12
Detecting specific ROM-in-RAM Mac (HTML) (日本語 HTML)
Deprecated - HW49: Identifying a Mac by name ("iMac"), and better alternatives for determining specific features ("has Firewire").
Technical Q&As 1999-10-05