Jump To:
Leopard Guides
Cocoa is an object-oriented application environment designed for developing Mac OS X native applications. The Cocoa frameworks support rapid development and high productivity. Cocoa provides developers starting new Mac OS X projects the fastest way to full-featured implementations. Applications from other platforms can also be brought to Mac OS X quickly using Cocoa.

A guided introduction and learning path for developers new to Cocoa.   Essential information for developers using Objective-C.   Objective-C API references organized by framework.
Document Descriptions
On Off
Display

Sort by
Title
Sorted by
Topic
Sort by
Date
Accessibility Overview (HTML) (PDF)
Explains how to use the accessibility features built into Mac OS X.
Accessibility 2008-03-11
Accessibility Programming Guidelines for Cocoa (HTML) (PDF)
Explains how Cocoa applications make their user interface available to external assistive applications.
Accessibility 2007-02-08
Apple Human Interface Guidelines (HTML) (PDF)
Introduces the Mac OS X user experience and explains how to design an application for Aqua.
Accessibility 2008-06-09
Mac OS X Technology Overview (HTML) (PDF)
Introduces Mac OS X and its technologies.
Accessibility 2008-10-15
Speech (HTML) (PDF)
Explains Cocoa's interfaces to the speech synthesis and speech recognition technologies.
Accessibility 2003-08-08
Address Book Programming Guide for Mac OS X (HTML) (PDF)
Explains how to add, search, remove, and customize Address Book records.
Apple Applications 2006-04-04
Apple Help Programming Guide (HTML) (PDF)
Explains how to author, package, and display user help content in Mac OS X.
Apple Applications 2007-10-31
Automator Programming Guide (HTML) (PDF)
Describes the concepts and tasks for developing actions, which are bundles loaded by the Automator application.
Apple Applications 2007-12-11
Calendar Store Programming Guide (HTML) (PDF)
Explains how to access iCal data.
Apple Applications 2007-10-31
Creating Printing Presets for iPhoto (HTML) (PDF)
Rules for creating and installing printer-specific collections of settings. Includes a sample file.
Apple Applications 2005-07-07
Dashboard Programming Topics (HTML) (PDF)
Explains Dashboard and WebKit technologies used in widgets.
Apple Applications 2009-02-04
Instant Message Programming Guide (HTML) (PDF)
Explains how to access iChat services and buddies and use iChat Theater through code samples.
Apple Applications 2007-10-31
Sync Services Programming Guide (HTML) (PDF)
Explains how to add syncing to your applications.
Apple Applications 2007-10-31
Sync Services Tutorial (HTML) (PDF)
Explains how to debug multiple syncing applications using the Syncrospector development tool.
Apple Applications 2007-07-11
Audio Queue Services Programming Guide (HTML) (PDF)
Describes how to play and record audio using Audio Queue Services.
Audio 2007-10-31
Audio Unit Programming Guide (HTML) (PDF)
Explains how to use Core Audio frameworks and the Core Audio SDK to create audio units.
Audio 2007-10-31
Core Audio Overview (HTML) (PDF)
Provides an overview of Core Audio and its programming interfaces.
Audio 2007-01-08
Sound Programming Topics for Cocoa (HTML) (PDF)
Explains how to load and play audio data in Cocoa.
Audio 2006-11-07
Archives and Serializations Programming Guide for Cocoa (HTML) (PDF)
Explains how to put Cocoa objects into and remove them from a representation suitable for archiving.
Data Management 2009-02-04
Atomic Store Programming Topics (HTML) (PDF)
Describes how to use the Core Data atomic store API to create persistent stores that use a custom format.
Data Management 2008-02-08
Attributed Strings Programming Guide (HTML) (PDF)
Explains how to use attributed strings, which manage attributes of character strings or individual characters.
Data Management 2007-06-04
Binary Data Programming Guide for Cocoa (HTML) (PDF)
Explains how to create and use Cocoa data objects, object-oriented wrappers for byte buffers.
Data Management 2009-05-06
Calendar Store Programming Guide (HTML) (PDF)
Explains how to access iCal data.
Data Management 2007-10-31
Collections Programming Topics for Cocoa (HTML) (PDF)
Explains how to group objects in arrays, sets, or dictionaries in Cocoa.
Data Management 2009-02-04
Core Data Model Versioning and Data Migration Programming Guide (HTML) (PDF)
Explains the managed object model versioning and data migration features of Core Data.
Data Management 2008-02-08
Core Data Programming Guide (HTML) (PDF)
Explains how to manage objects using the Core Data framework.
Data Management 2009-03-04
Core Data Snippets (HTML) (PDF)
Snippets of code that you can use when writing a program that uses Core Data.
Data Management 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.
Data Management 2009-03-04
Creating a Managed Object Model with Xcode (HTML) (PDF)
A tutorial that shows how to create a Core Data managed object model using Xcode.
Data Management 2007-08-07
Data Formatting Programming Guide for Cocoa (HTML) (PDF)
Explains how to use Cocoa formatters to create and validate text in text fields and other cells.
Data Management 2008-10-15
Dates and Times Programming Topics for Cocoa (HTML) (PDF)
Explains how to manage Cocoa dates and times.
Data Management 2007-09-04
Event-Driven XML Programming Guide for Cocoa (HTML) (PDF)
Explains how to process XML documents using the Cocoa streaming parser.
Data Management 2008-09-09
Key-Value Coding Programming Guide (HTML) (PDF)
Conceptual information about how to access a Cocoa object's values using keys.
Data Management 2009-02-04
Key-Value Observing Programming Guide (HTML) (PDF)
Explains the Cocoa key-value observing protocol.
Data Management 2009-05-06
NSPersistentDocument Core Data Tutorial (HTML) (PDF)
Step-by-step instructions for building a simple but functionally rich application using NSPersistentDocument and Cocoa bindings.
Data Management 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.
Data Management 2009-02-04
Number and Value Programming Topics for Cocoa (HTML) (PDF)
Explains how to use Cocoa object wrappers for primitive C data types.
Data Management 2008-02-08
Predicate Programming Guide (HTML) (PDF)
Describes how to specify queries in Cocoa.
Data Management 2009-05-06
Property List Programming Guide (HTML) (PDF)
Explains how to use structured, textual representations of data in Cocoa.
Data Management 2008-11-19
Search Kit Programming Guide (HTML) (PDF)
Describes Search Kit architecture and workflow, and how to add search capabilities to Carbon and Cocoa applications.
Data Management 2005-12-06
Sort Descriptor Programming Topics (HTML) (PDF)
Explains how to use sort descriptors to specify the sorting of collections.
Data Management 2007-07-10
Stream Programming Guide for Cocoa (HTML) (PDF)
Explains how to use the Cocoa stream classes to read data from and write data to streams.
Data Management 2009-05-06
String Programming Guide for Cocoa (HTML) (PDF)
Explains how to create, search, concatenate, and draw strings in Cocoa.
Data Management 2008-10-15
Tree-Based XML Programming Guide for Cocoa (HTML) (PDF)
Explains how to use the NSXML classes of Cocoa to process, modify, and query XML data.
Data Management 2009-02-04
Undo Architecture (HTML) (PDF)
Explains how to record information in Cocoa so a user can reverse an operation's effect.
Data Management 2002-11-12
User Defaults Programming Topics for Cocoa (HTML) (PDF)
Explains how to use the Cocoa defaults system to create and save user preferences.
Data Management 2007-10-31
Value Transformer Programming Guide (HTML) (PDF)
Explains how to create and use value transformers, which are used with the Controller Layer.
Data Management 2007-04-06
Xcode Tools for Core Data (HTML) (PDF)
Describes the Xcode modeling tools for Core Data.
Data Management 2008-04-15
64-Bit Transition Guide for Cocoa (HTML) (PDF)
Explains how to port Cocoa projects to 64-bit addressing.
Design Guidelines 2009-03-03
Accessibility Programming Guidelines for Cocoa (HTML) (PDF)
Explains how Cocoa applications make their user interface available to external assistive applications.
Design Guidelines 2007-02-08
Apple Human Interface Guidelines (HTML) (PDF)
Introduces the Mac OS X user experience and explains how to design an application for Aqua.
Design Guidelines 2008-06-09
Application Architecture Overview (HTML) (PDF)
Explains the architecture of a Cocoa application and how it interacts with the operating system.
Design Guidelines 2006-08-07
Carbon-Cocoa Integration Guide (HTML) (PDF)
Explains how to use both Carbon and Cocoa in developing an application.
Design Guidelines 2007-10-31
Cocoa Application Tutorial Using Bindings (HTML) (PDF)
A hands-on introduction to Cocoa bindings.
Design Guidelines 2007-07-10
Cocoa Bindings Programming Topics (HTML) (PDF)
Explains how to rapidly develop sophisticated user interfaces using Cocoa binding technology.
Design Guidelines 2009-03-08
Cocoa Fundamentals Guide (HTML) (PDF)
Introduces the basic concepts, terminology, architectures, and design patterns of the Cocoa frameworks and development environment.
Design Guidelines 2008-11-19
Cocoa Scripting Guide (HTML) (PDF)
Explains how to create scriptable Cocoa applications that use the scripting definition (sdef) format.
Design Guidelines 2008-03-11
Coding Guidelines for Cocoa (HTML) (PDF)
Naming guidelines for Cocoa API and design advice to framework developers.
Design Guidelines 2006-04-04
Core Data Programming Guide (HTML) (PDF)
Explains how to manage objects using the Core Data framework.
Design Guidelines 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.
Design Guidelines 2009-03-04
Document-Based Applications Overview (HTML) (PDF)
Explains how to design and implement Cocoa applications that manage multiple documents.
Design Guidelines 2009-01-12
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.
Design Guidelines 2009-03-04
Garbage Collection Programming Guide (HTML) (PDF)
Describes the garbage collection system for Cocoa.
Design Guidelines 2008-11-19
Key-Value Coding Programming Guide (HTML) (PDF)
Conceptual information about how to access a Cocoa object's values using keys.
Design Guidelines 2009-02-04
Key-Value Observing Programming Guide (HTML) (PDF)
Explains the Cocoa key-value observing protocol.
Design Guidelines 2009-05-06
Memory Management Programming Guide for Cocoa (HTML) (PDF)
Explains how to allocate and deallocate objects in Cocoa.
Design Guidelines 2009-05-06
Model Object Implementation Guide (HTML) (PDF)
Describes issues relating to the design and implementation of model objects
Design Guidelines 2008-02-08
Notification Programming Topics for Cocoa (HTML) (PDF)
Explains how to send and receive information about events in Cocoa programs.
Design Guidelines 2007-05-03
NSPersistentDocument Core Data Tutorial (HTML) (PDF)
Step-by-step instructions for building a simple but functionally rich application using NSPersistentDocument and Cocoa bindings.
Design Guidelines 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.
Design Guidelines 2009-02-04
Object-Oriented Programming with Objective-C (HTML) (PDF)
Describes object-oriented programming from the perspective of an Objective-C developer.
Design Guidelines 2008-11-19
Predicate Programming Guide (HTML) (PDF)
Describes how to specify queries in Cocoa.
Design Guidelines 2009-05-06
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).
Design Guidelines 2007-10-31
Runtime Configuration Guidelines (HTML) (PDF)
Conceptual and reference information for dynamically configuring your software.
Design Guidelines 2008-07-08
Spotlight Overview (HTML) (PDF)
Introduces the main components and services of Apple's metadata technology.
Design Guidelines 2007-05-27
Undo Architecture (HTML) (PDF)
Explains how to record information in Cocoa so a user can reverse an operation's effect.
Design Guidelines 2002-11-12
User Interface Validation (HTML) (PDF)
Explains how to use the standard mechanism to validate user interface items in Cocoa.
Design Guidelines 2007-07-10
Xcode Design Tools for Class Modeling (HTML) (PDF)
Describes the Xcode Design Tools for Class Modeling.
Design Guidelines 2009-02-04
Xcode Unit Testing Guide (HTML) (PDF)
Explains how to incorporate test cases to validate individual units of source code.
Design Guidelines 2008-05-02
Action Messages (HTML) (PDF)
Explains how Cocoa controls respond to user actions and enable users to communicate to an application.
Events & Other Input 2002-11-12
Cocoa Event-Handling Guide (HTML) (PDF)
Introduces event mechanisms and the types of events in Cocoa and describes how to handle events of each type.
Events & Other Input 2009-02-04
Cursor Management (HTML) (PDF)
Explains how to set the cursor and handle cursor-update events in Cocoa applications.
Events & Other Input 2008-03-11
Drag and Drop Programming Topics for Cocoa (HTML) (PDF)
Explains how to implement drag and drop in Cocoa.
Events & Other Input 2006-06-28
Notification Programming Topics for Cocoa (HTML) (PDF)
Explains how to send and receive information about events in Cocoa programs.
Events & Other Input 2007-05-03
Pasteboard Programming Topics for Cocoa (HTML) (PDF)
Explains how to transfer data using pasteboard operations in Cocoa.
Events & Other Input 2007-07-13
Text Input Management (HTML) (PDF)
Explains how to use input servers, input managers, and text views in Cocoa.
Events & Other Input 2007-02-08
Timer Programming Topics for Cocoa (HTML) (PDF)
Explains how to use timers for scheduling automatic, repeating message invocations in Cocoa.
Events & Other Input 2008-11-19
Application File Management (HTML) (PDF)
Explains how Cocoa applications can use, manipulate, and "own" files.
File Management 2006-11-07
File System Overview (HTML) (PDF)
Conceptual information and guidelines describing the structure and usage of the Mac OS X file system.
File Management 2008-07-11
Low-Level File Management Programming Topics (HTML) (PDF)
Explains the low-level ways Cocoa applications can interact with files.
File Management 2009-03-05
Spotlight Importer Programming Guide (HTML) (PDF)
Describes the role of metadata importers and how to write them.
File Management 2007-05-27
Spotlight Query Programming Guide (HTML) (PDF)
Describes how to add Spotlight searching to your applications.
File Management 2006-03-08
Uniform Type Identifiers Overview (HTML) (PDF)
Describes uniform type identifiers and how to use them.
File Management 2008-04-08
Animation Overview (HTML) (PDF)
Describes the animation facilities provided by Mac OS X.
Games 2008-10-15
Calendar Store Programming Guide (HTML) (PDF)
Explains how to access iCal data.
General 2007-10-31
Instant Message Programming Guide (HTML) (PDF)
Explains how to access iChat services and buddies and use iChat Theater through code samples.
General 2007-10-31
Animation Overview (HTML) (PDF)
Describes the animation facilities provided by Mac OS X.
Graphics & Imaging 2008-10-15
Animation Programming Guide for Cocoa (HTML) (PDF)
Describes how to use Cocoa animation objects to enhance user interface transitions.
Graphics & Imaging 2006-05-23
Animation Types and Timing Programming Guide (HTML) (PDF)
Describes the animation and timing classes used by both Core Animation and Cocoa Animation proxies.
Graphics & Imaging 2008-04-08
Cocoa Drawing Guide (HTML) (PDF)
Explains how to use Cocoa to draw your application's user interface.
Graphics & Imaging 2009-01-06
Color Management Overview (HTML) (PDF)
Introduces basic concepts and defines color spaces.
Graphics & Imaging 2005-07-07
Color Programming Topics for Cocoa (HTML) (PDF)
Explains how applications specify colors and how users choose colors in Cocoa.
Graphics & Imaging 2009-03-04
Core Animation Cookbook (HTML) (PDF)
Demonstrates common Core Animation tasks.
Graphics & Imaging 2008-03-11
Core Animation Programming Guide (HTML) (PDF)
Introduces the main components and services of Core Animation.
Graphics & Imaging 2008-11-13
Core Image Programming Guide (HTML) (PDF)
Provides an overview and explains how to use and create image filters and image units.
Graphics & Imaging 2008-06-09
Image Capture Applications Programming Guide (HTML) (PDF)
Describes the interaction between applications programs and image capture devices such as cameras and scanners.
Graphics & Imaging 2007-05-16
Image I/O Programming Guide (HTML) (PDF)
Explains how to read and write image data using the Image I/O framework.
Graphics & Imaging 2007-07-02
Image Kit Programming Guide (HTML) (PDF)
Explains how to support browsing, viewing, editing, and processing images.
Graphics & Imaging 2008-06-09
Image Unit Tutorial (HTML) (PDF)
Describes how to write image processing kernels and package them for distribution.
Graphics & Imaging 2009-05-06
Image Views (HTML) (PDF)
Explains how to use Cocoa image views.
Graphics & Imaging 2002-11-12
PDF Kit Programming Guide (HTML) (PDF)
Introduces basic PDF concepts and describes how to use PDF Kit to display PDF documents in your application.
Graphics & Imaging 2007-12-11
Printing Programming Topics for Cocoa (HTML) (PDF)
Explains how to support printing in Cocoa applications.
Graphics & Imaging 2006-06-28
Quartz Composer Custom Patch Programming Guide (HTML) (PDF)
Describes how to create custom patches for distribution.
Graphics & Imaging 2007-12-11
Quartz Composer Programming Guide (HTML) (PDF)
Describes how to used the framework to load, play, and control compositions.
Graphics & Imaging 2008-10-15
Quartz Composer User Guide (HTML) (PDF)
Explains how to use the Quartz Composer development tool to create motion graphics compositions.
Graphics & Imaging 2007-07-17
Resolution Independence Guidelines (HTML) (PDF)
Describes resolution independence and how to start updating applications to support high-resolution monitors.
Graphics & Imaging 2007-05-04
Scroll View Programming Guide for Cocoa (HTML) (PDF)
Describes how to use scroll views in Cocoa applications.
Graphics & Imaging 2006-06-28
View Programming Guide for Cocoa (HTML) (PDF)
Explains how to design and implement Cocoa views in applications.
Graphics & Imaging 2008-04-10
WebKit Objective-C Programming Guide (HTML) (PDF)
Explains how to use the WebKit to embed web content in both Cocoa and Carbon applications.
Graphics & Imaging 2008-10-15
AltiVec/SSE Migration Guide (HTML) (PDF)
Explains how to convert PowerPC AltiVec code to Intel SSE code.
Intel-Based Macs 2005-09-08
GCC Porting Guide (HTML) (PDF)
Provides guidance on how to migrate projects to new GCC releases.
Intel-Based Macs 2006-10-03
Mac OS X ABI Function Call Guide (HTML) (PDF)
Describes the function-calling conventions used in the architectures supported by Mac OS X.
Intel-Based Macs 2009-02-04
Universal Binary Programming Guidelines, Second Edition (HTML) (PDF)
Conceptual information and tips for writing code that runs on PowerPC-based and Intel-based Macintosh computers.
Intel-Based Macs 2009-02-04
Distributed Objects Programming Topics (HTML) (PDF)
Explains how Objective-C objects in different threads or different processes communicate.
Interapplication Communication 2007-06-06
Drag and Drop Programming Topics for Cocoa (HTML) (PDF)
Explains how to implement drag and drop in Cocoa.
Interapplication Communication 2006-06-28
Interacting with the Operating System (HTML) (PDF)
Explains how Cocoa applications manage tasks and get information about hosts and processes.
Interapplication Communication 2006-04-04
Pasteboard Programming Topics for Cocoa (HTML) (PDF)
Explains how to transfer data using pasteboard operations in Cocoa.
Interapplication Communication 2007-07-13
System Services (HTML) (PDF)
Explains how Cocoa applications can extend their capabilities seamlessly to other applications.
Interapplication Communication 2002-11-12
Uniform Type Identifiers Overview (HTML) (PDF)
Describes uniform type identifiers and how to use them.
Interapplication Communication 2008-04-08
Workspace Services Programming Topics (HTML) (PDF)
Explains how to use the services the workspace class provides to Cocoa applications.
Interapplication Communication 2007-03-06
XML-RPC and SOAP Programming Guide (HTML) (PDF)
Explains how to make remote procedure calls from applications or from AppleScript scripts.
Interapplication Communication 2005-03-03
Internationalization Programming Topics (HTML) (PDF)
Explains how to support multiple languages in software.
Internationalization 2009-01-06
Instant Message Programming Guide (HTML) (PDF)
Explains how to access iChat services and buddies and use iChat Theater through code samples.
Internet & Web 2007-10-31
Sync Services Programming Guide (HTML) (PDF)
Explains how to add syncing to your applications.
Internet & Web 2007-10-31
Sync Services Tutorial (HTML) (PDF)
Explains how to debug multiple syncing applications using the Syncrospector development tool.
Internet & Web 2007-07-11
Tree-Based XML Programming Guide for Cocoa (HTML) (PDF)
Explains how to use the NSXML classes of Cocoa to process, modify, and query XML data.
Internet & Web 2009-02-04
URL Loading System (HTML) (PDF)
Explains how to manipulate URLs and transfer URL contents.
Internet & Web 2008-05-06
Web Services Core Programming Guide (HTML) (PDF)
Explains how to use the new Web Services client-side frameworks available in Mac OS X.
Internet & Web 2009-01-06
WebKit DOM Programming Topics (HTML) (PDF)
Describes how to use JavaScript in web content and WebKit-based applications.
Internet & Web 2008-10-15
WebKit Objective-C Programming Guide (HTML) (PDF)
Explains how to use the WebKit to embed web content in both Cocoa and Carbon applications.
Internet & Web 2008-10-15
WebKit Plug-In Programming Topics (HTML) (PDF)
Explains how to develop and deploy browser plug-ins based on the WebKit architecture.
Internet & Web 2008-10-15
XML-RPC and SOAP Programming Guide (HTML) (PDF)
Explains how to make remote procedure calls from applications or from AppleScript scripts.
Internet & Web 2005-03-03
CFNetwork Programming Guide (HTML) (PDF)
Explains how to use Core Foundation networking functions to work with low-level BSD sockets.
Networking 2009-05-06
Distributed Objects Programming Topics (HTML) (PDF)
Explains how Objective-C objects in different threads or different processes communicate.
Networking 2007-06-06
NSNetServices and CFNetServices Programming Guide (HTML) (PDF)
Describes how to implement Bonjour in Cocoa or Carbon applications.
Networking 2008-10-15
Stream Programming Guide for Cocoa (HTML) (PDF)
Explains how to use the Cocoa stream classes to read data from and write data to streams.
Networking 2009-05-06
URL Loading System (HTML) (PDF)
Explains how to manipulate URLs and transfer URL contents.
Networking 2008-05-06
Web Services Core Programming Guide (HTML) (PDF)
Explains how to use the new Web Services client-side frameworks available in Mac OS X.
Networking 2009-01-06
Assertions and Logging (HTML) (PDF)
Explains how to use assertions and logging to diagnose problems in Cocoa applications.
Objective-C Language 2006-04-04
Cocoa Application Tutorial (HTML) (PDF)
Describes how to build a simple Cocoa application using Xcode.
Objective-C Language 2007-10-31
Coding Guidelines for Cocoa (HTML) (PDF)
Naming guidelines for Cocoa API and design advice to framework developers.
Objective-C Language 2006-04-04
Distributed Objects Programming Topics (HTML) (PDF)
Explains how Objective-C objects in different threads or different processes communicate.
Objective-C Language 2007-06-06
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.
Objective-C Language 2009-03-04
Exception Programming Topics for Cocoa (HTML) (PDF)
Explains how to raise and handle exceptions in Cocoa applications.
Objective-C Language 2007-10-02
Garbage Collection Programming Guide (HTML) (PDF)
Describes the garbage collection system for Cocoa.
Objective-C Language 2008-11-19
Memory Management Programming Guide for Cocoa (HTML) (PDF)
Explains how to allocate and deallocate objects in Cocoa.
Objective-C Language 2009-05-06
Object-Oriented Programming with Objective-C (HTML) (PDF)
Describes object-oriented programming from the perspective of an Objective-C developer.
Objective-C Language 2008-11-19
The Objective-C 2.0 Programming Language (HTML) (PDF)
Introduces object-oriented programming and describes the main programming language used for Cocoa development.
Objective-C Language 2009-05-06
Objective-C 2.0 Runtime Programming Guide (HTML) (PDF)
Describes the Objective-C 2.0 runtime support library.
Objective-C Language 2009-02-04
Assertions and Logging (HTML) (PDF)
Explains how to use assertions and logging to diagnose problems in Cocoa applications.
Performance 2006-04-04
Cocoa Performance Guidelines (HTML) (PDF)
Guidelines for improving the performance of Cocoa applications.
Performance 2005-08-11
Code Size Performance Guidelines (HTML) (PDF)
Guidelines for reducing the size of an application binary.
Performance 2006-06-28
Code Speed Performance Guidelines (HTML) (PDF)
Guidelines for improving the performance and efficiency of code.
Performance 2005-07-07
Debugging Cocoa Applications (HTML) (PDF)
Tips and techniques for debugging Cocoa applications.
Performance 2002-11-12
Drawing Performance Guidelines (HTML) (PDF)
Guidelines for improving the speed of drawing code.
Performance 2006-04-04
Exception Programming Topics for Cocoa (HTML) (PDF)
Explains how to raise and handle exceptions in Cocoa applications.
Performance 2007-10-02
File-System Performance Guidelines (HTML) (PDF)
Guidelines for improving the performance of file-related code.
Performance 2005-07-07
Garbage Collection Programming Guide (HTML) (PDF)
Describes the garbage collection system for Cocoa.
Performance 2008-11-19
Launch Time Performance Guidelines (HTML) (PDF)
Guidelines for improving the launch performance of an application.
Performance 2006-04-04
Memory Usage Performance Guidelines (HTML) (PDF)
Guidelines for improving the performance of memory-related code.
Performance 2006-06-28
Performance Overview (HTML) (PDF)
Introduces the factors that determine performance.
Performance 2006-10-03
Threading Programming Guide (HTML) (PDF)
Explains how to use threads in Cocoa applications.
Performance 2008-02-08
Universal Binary Programming Guidelines, Second Edition (HTML) (PDF)
Conceptual information and tips for writing code that runs on PowerPC-based and Intel-based Macintosh computers.
Porting 2009-02-04
Mac OS X Printing System Overview (HTML) (PDF)
Introduces Apple's printing architecture. Includes a road map for developing software.
Printing 2006-02-07
Printing Programming Topics for Cocoa (HTML) (PDF)
Explains how to support printing in Cocoa applications.
Printing 2006-06-28
Providing PDF Workflow Options in the Print Dialog (HTML) (PDF)
Installation information and examples, including the use of Automator workflows.
Printing 2007-10-31
Using PostScript Printer Description Files (HTML) (PDF)
Information for printer vendors. Includes installing files, PPD/PDE binding, and grouping features.
Printing 2005-07-07
Interacting with the Operating System (HTML) (PDF)
Explains how Cocoa applications manage tasks and get information about hosts and processes.
Process Management 2006-04-04
Threading Programming Guide (HTML) (PDF)
Explains how to use threads in Cocoa applications.
Process Management 2008-02-08
QTKit Capture Programming Guide (HTML) (PDF)
Describes how to capture media and output it QuickTime movies.
QuickTime 2007-10-31
QuickTime Kit Programming Guide (HTML) (PDF)
Provides a tutorial on how to build and extend a QTKitPlayer application using the QuickTime Kit framework in Cocoa.
QuickTime 2005-11-09
QuickTime Overview (HTML) (PDF)
Introduces the main concepts and services of QuickTime.
QuickTime 2005-08-11
Video (HTML) (PDF)
Explains how to use QuickTime movies in Cocoa.
QuickTime 2002-11-12
Bundle Programming Guide (HTML) (PDF)
Explains how to use Core Foundation bundle objects to organize resources.
Resource Management 2005-11-09
Code Loading Programming Topics for Cocoa (HTML) (PDF)
Explains how Cocoa applications can dynamically load code during execution.
Resource Management 2007-08-10
Interacting with the Operating System (HTML) (PDF)
Explains how Cocoa applications manage tasks and get information about hosts and processes.
Resource Management 2006-04-04
Resource Programming Guide (HTML) (PDF)
Explains how to work with nib and bundle resources in Mac OS X applications.
Resource Management 2009-01-06
Garbage Collection Programming Guide (HTML) (PDF)
Describes the garbage collection system for Cocoa.
Runtime Architecture 2008-11-19
Objective-C 2.0 Runtime Programming Guide (HTML) (PDF)
Describes the Objective-C 2.0 runtime support library.
Runtime Architecture 2009-02-04
AppleScript Language Guide (HTML) (PDF)
Defines the AppleScript scripting language. Includes many brief sample scripts.
Scripting & Automation 2008-03-11
AppleScript Overview (HTML) (PDF)
Introduces the technology for writing scripts to control applications. Useful for scripters and application developers.
Scripting & Automation 2007-10-31
Cocoa Scripting Guide (HTML) (PDF)
Explains how to create scriptable Cocoa applications that use the scripting definition (sdef) format.
Scripting & Automation 2008-03-11
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).
Scripting & Automation 2007-10-31
Scripting Bridge Programming Guide for Cocoa (HTML) (PDF)
Describes the Scripting Bridge technology, which bridges OSA-compliant applications to Objective-C, and explains how to use it in Cocoa programs.
Scripting & Automation 2008-03-11
XML-RPC and SOAP Programming Guide (HTML) (PDF)
Explains how to make remote procedure calls from applications or from AppleScript scripts.
Scripting & Automation 2005-03-03
Authorization Services Programming Guide (HTML) (PDF)
Explains how to add fine-grained control of privileged operations in an application.
Security 2009-01-06
Certificate, Key, and Trust Services Programming Guide (HTML) (PDF)
Shows how to evaluate trust for a certificate and recover from a trust failure.
Security 2008-11-19
CFNetwork Programming Guide (HTML) (PDF)
Explains how to use Core Foundation networking functions to work with low-level BSD sockets.
Security 2009-05-06
Code Signing Guide (HTML) (PDF)
Explains how you can sign your code and why you should.
Security 2008-11-19
Keychain Services Programming Guide (HTML) (PDF)
This document explains how to use Keychain Services to store and retrieve passwords.
Security 2009-03-12
Secure Coding Guide (HTML) (PDF)
Describes techniques to use and factors to consider to make your code more secure from attack.
Security 2008-05-23
Security Overview (HTML) (PDF)
An introduction to computer security concepts and the security APIs in Mac OS X and iPhone OS.
Security 2008-10-15
Sync Services Programming Guide (HTML) (PDF)
Explains how to add syncing to your applications.
Syncing 2007-10-31
Sync Services Tutorial (HTML) (PDF)
Explains how to debug multiple syncing applications using the Syncrospector development tool.
Syncing 2007-07-11
Attributed Strings Programming Guide (HTML) (PDF)
Explains how to use attributed strings, which manage attributes of character strings or individual characters.
Text & Fonts 2007-06-04
Dictionary Services Programming Guide (HTML) (PDF)
Explains how to create a dictionary and access it programmatically.
Text & Fonts 2007-05-30
Font Handling (HTML) (PDF)
Explains the Cocoa font management system and how users select fonts.
Text & Fonts 2008-02-08
Font Panel (HTML) (PDF)
Explains how to use the Cocoa Font panel.
Text & Fonts 2004-08-31
Rulers and Paragraph Styles (HTML) (PDF)
Explains paragraph styles and how to work with the rulers that enable users to manipulate them.
Text & Fonts 2007-09-04
Search Kit Programming Guide (HTML) (PDF)
Describes Search Kit architecture and workflow, and how to add search capabilities to Carbon and Cocoa applications.
Text & Fonts 2005-12-06
Spell Checking (HTML) (PDF)
Explains how to use the spell-checking facilities in the Cocoa text system.
Text & Fonts 2004-02-09
String Programming Guide for Cocoa (HTML) (PDF)
Explains how to create, search, concatenate, and draw strings in Cocoa.
Text & Fonts 2008-10-15
Text Attachment Programming Topics for Cocoa (HTML) (PDF)
Expalins how to add graphics and other attachments to text.
Text & Fonts 2006-12-05
Text Attributes (HTML) (PDF)
Explains how to work with attributes, the distinguishing characteristics of rich text.
Text & Fonts 2004-02-16
Text Editing Programming Guide for Cocoa (HTML) (PDF)
Explains how to control the behavior of the Cocoa text system as it performs text editing.
Text & Fonts 2008-02-08
Text Fields (HTML) (PDF)
Explains how to use Cocoa text fields.
Text & Fonts 2004-02-09
Text Input and Output (HTML) (PDF)
Explains how to read and write text files in Cocoa.
Text & Fonts 2004-02-10
Text Input Management (HTML) (PDF)
Explains how to use input servers, input managers, and text views in Cocoa.
Text & Fonts 2007-02-08
Text Layout Programming Guide for Cocoa (HTML) (PDF)
Explains how the Cocoa text system lays out text on pages.
Text & Fonts 2008-10-15
Text System Overview (HTML) (PDF)
Explains how the Cocoa text system works. Includes a tutorial.
Text & Fonts 2009-04-08
Text System Storage Layer Overview (HTML) (PDF)
Explains how the Cocoa text system stores the information it needs to lay out text.
Text & Fonts 2005-08-11
Text System User Interface Layer Programming Guide for Cocoa (HTML) (PDF)
Explains how to implement the main, high-level interface to the Cocoa text system.
Text & Fonts 2006-06-28
Text Views (HTML) (PDF)
Explains how to use Cocoa text views.
Text & Fonts 2004-02-09
AppleScript Studio Programming Guide (HTML) (PDF)
Explains how to create script-driven applications with complex user interfaces based on Cocoa UI classes. Includes tutorials.
Tools 2006-04-04
Automator Programming Guide (HTML) (PDF)
Describes the concepts and tasks for developing actions, which are bundles loaded by the Automator application.
Tools 2007-12-11
Cross-Development Programming Guide (HTML) (PDF)
Explains how to build software for versions of Mac OS X other than the one the development tools are running on.
Tools 2006-11-07
Debugging with GDB (HTML)
Open-source document that explains how to use GDB to debug programs.
Tools 2008-06-19
Interface Builder Plug-In Programming Guide (HTML) (PDF)
Describes the process for creating custom Interface Builder palettes.
Tools 2007-07-18
Interface Builder User Guide (HTML) (PDF)
Conceptual information and tasks explaining how to use the Interface Builder application to design user interfaces.
Tools 2008-11-19
The Objective-C 2.0 Programming Language (HTML) (PDF)
Introduces object-oriented programming and describes the main programming language used for Cocoa development.
Tools 2009-05-06
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).
Tools 2007-10-31
Software Delivery Guide (HTML) (PDF)
Explains how to distribute and install Mac OS X software using PackageMaker and Installer.
Tools 2006-07-24
Sync Services Tutorial (HTML) (PDF)
Explains how to debug multiple syncing applications using the Syncrospector development tool.
Tools 2007-07-11
Xcode Design Tools for Class Modeling (HTML) (PDF)
Describes the Xcode Design Tools for Class Modeling.
Tools 2009-02-04
Xcode Overview (HTML) (PDF)
Describes the Xcode IDE and its major components, and provides and overview of the development process.
Tools 2009-01-06
Xcode Project Management Guide (HTML) (PDF)
Provides practical descriptions of the major development tasks developers perform with Xcode.
Tools 2009-01-06
Xcode Quick Tour for Mac OS X (HTML) (PDF)
Provides a hands-on introduction to Xcode, Apple's comprehensive suite of software development tools for Mac OS X.
Tools 2008-10-15
Xcode Tools for Core Data (HTML) (PDF)
Describes the Xcode modeling tools for Core Data.
Tools 2008-04-15
Xcode Workspace Guide (HTML) (PDF)
Provides an overview of the Xcode workspace, and shows how to use its components and features.
Tools 2009-01-06
Accessibility Programming Guidelines for Cocoa (HTML) (PDF)
Explains how Cocoa applications make their user interface available to external assistive applications.
User Experience 2007-02-08
Apple Help Programming Guide (HTML) (PDF)
Explains how to author, package, and display user help content in Mac OS X.
User Experience 2007-10-31
Apple Human Interface Guidelines (HTML) (PDF)
Introduces the Mac OS X user experience and explains how to design an application for Aqua.
User Experience 2008-06-09
Application Menu and Pop-up List Programming Topics for Cocoa (HTML) (PDF)
Explains how Cocoa menus and lists work and how to manipulate items within them.
User Experience 2007-06-26
Boxes (HTML) (PDF)
Explains how to use Cocoa boxes.
User Experience 2003-02-15
Browsers (HTML) (PDF)
Explains how to use Cocoa browsers.
User Experience 2004-08-31
Button Programming Topics for Cocoa (HTML) (PDF)
Explains how to use Cocoa buttons.
User Experience 2008-10-15
Cocoa Bindings Programming Topics (HTML) (PDF)
Explains how to rapidly develop sophisticated user interfaces using Cocoa binding technology.
User Experience 2009-03-08
Combo Box Programming Topics (HTML) (PDF)
Explains how to use Cocoa combo boxes.
User Experience 2002-11-12
Control and Cell Programming Topics for Cocoa (HTML) (PDF)
Explains the relationship between Cocoa control and cell objects.
User Experience 2008-10-15
Cursor Management (HTML) (PDF)
Explains how to set the cursor and handle cursor-update events in Cocoa applications.
User Experience 2008-03-11
Dialogs and Special Panels (HTML) (PDF)
Explains how to create alert panels. Includes links to documents about other types of panels.
User Experience 2009-02-04
Dock Tile Programming Guide (HTML) (PDF)
Explains how to provide an icon and contextual menu in Carbon applications.
User Experience 2009-03-04
Drag and Drop Programming Topics for Cocoa (HTML) (PDF)
Explains how to implement drag and drop in Cocoa.
User Experience 2006-06-28
Drawers (HTML) (PDF)
Explains how to use Cocoa drawers.
User Experience 2003-02-04
Font Panel (HTML) (PDF)
Explains how to use the Cocoa Font panel.
User Experience 2004-08-31
Forms (HTML) (PDF)
Explains how to use Cocoa forms.
User Experience 2002-11-12
Image Views (HTML) (PDF)
Explains how to use Cocoa image views.
User Experience 2002-11-12
Matrix Programming Guide for Cocoa (HTML) (PDF)
Explains how to use Cocoa matrices.
User Experience 2006-11-07
Online Help (HTML) (PDF)
Explains how to add help to a Cocoa application.
User Experience 2006-06-28
Outline View Programming Topics for Cocoa (HTML) (PDF)
Explains how to use Cocoa outline views.
User Experience 2006-06-28
Pasteboard Programming Topics for Cocoa (HTML) (PDF)
Explains how to transfer data using pasteboard operations in Cocoa.
User Experience 2007-07-13
Preference Panes (HTML) (PDF)
Explains how to create dynamically loaded plug-ins that provide a graphical interface to user preferences.
User Experience 2006-10-03
Progress Indicators (HTML) (PDF)
Explains how to use Cocoa progress indicators.
User Experience 2002-11-12
Quick Look Programming Guide (HTML) (PDF)
Describes the purporse and architecture of Quick Look generators and explains how to create them.
User Experience 2008-02-08
Resolution Independence Guidelines (HTML) (PDF)
Describes resolution independence and how to start updating applications to support high-resolution monitors.
User Experience 2007-05-04
Scroll View Programming Guide for Cocoa (HTML) (PDF)
Describes how to use scroll views in Cocoa applications.
User Experience 2006-06-28
Search Fields (HTML) (PDF)
Explains how to use Cocoa search fields.
User Experience 2008-02-08
Search Kit Programming Guide (HTML) (PDF)
Describes Search Kit architecture and workflow, and how to add search capabilities to Carbon and Cocoa applications.
User Experience 2005-12-06
Segmented Controls Programming Guide for Cocoa (HTML) (PDF)
Explains how to use Cocoa segmented controls.
User Experience 2006-02-07
Sheet Programming Topics for Cocoa (HTML) (PDF)
Explains how to use Cocoa sheets.
User Experience 2006-09-05
Slider Programming Topics for Cocoa (HTML) (PDF)
Explains how to use Cocoa sliders.
User Experience 2006-10-03
Software Delivery Guide (HTML) (PDF)
Explains how to distribute and install Mac OS X software using PackageMaker and Installer.
User Experience 2006-07-24
Speech (HTML) (PDF)
Explains Cocoa's interfaces to the speech synthesis and speech recognition technologies.
User Experience 2003-08-08
Speech Synthesis Programming Guide (HTML) (PDF)
Describes speech synthesis in Mac OS X and explains how your application can produce customized spoken output.
User Experience 2006-09-05
Spell Checking (HTML) (PDF)
Explains how to use the spell-checking facilities in the Cocoa text system.
User Experience 2004-02-09
Status Bars (HTML) (PDF)
Explains how to use Cocoa status bars.
User Experience 2002-11-12
Steppers (HTML) (PDF)
Explains how to use Cocoa steppers.
User Experience 2002-11-12
System Services (HTML) (PDF)
Explains how Cocoa applications can extend their capabilities seamlessly to other applications.
User Experience 2002-11-12
Tab Views (HTML) (PDF)
Explains how to use Cocoa tab views.
User Experience 2003-11-06
Table View Programming Guide (HTML) (PDF)
Explains how to use Cocoa table views.
User Experience 2006-04-04
Text Fields (HTML) (PDF)
Explains how to use Cocoa text fields.
User Experience 2004-02-09
Text System User Interface Layer Programming Guide for Cocoa (HTML) (PDF)
Explains how to implement the main, high-level interface to the Cocoa text system.
User Experience 2006-06-28
Text Views (HTML) (PDF)
Explains how to use Cocoa text views.
User Experience 2004-02-09
Token Field Programming Guide for Cocoa (HTML) (PDF)
Describes how to set up and programatically manage a token field.
User Experience 2007-12-11
Toolbar Programming Topics for Cocoa (HTML) (PDF)
Explains how to use Cocoa toolbars.
User Experience 2009-02-04
Undo Architecture (HTML) (PDF)
Explains how to record information in Cocoa so a user can reverse an operation's effect.
User Experience 2002-11-12
User Defaults Programming Topics for Cocoa (HTML) (PDF)
Explains how to use the Cocoa defaults system to create and save user preferences.
User Experience 2007-10-31
User Interface Validation (HTML) (PDF)
Explains how to use the standard mechanism to validate user interface items in Cocoa.
User Experience 2007-07-10
WebKit Objective-C Programming Guide (HTML) (PDF)
Explains how to use the WebKit to embed web content in both Cocoa and Carbon applications.
User Experience 2008-10-15
Window Programming Guide for Cocoa (HTML) (PDF)
Explains how to use Cocoa windows and panels.
User Experience 2009-02-04