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
Sort by
Topic
Sorted by
Date
AppleScript Overview (HTML) (PDF)
Introduces the technology for writing scripts to control applications. Useful for scripters and application developers.
Scripting & Automation 2007-10-31
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
Calendar Store Programming Guide (HTML) (PDF)
Explains how to access iCal data.
Apple Applications, Data Management, General 2007-10-31
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 (HTML) (PDF)
Describes how to build a simple Cocoa application using Xcode.
Objective-C Language 2007-10-31
Instant Message Programming Guide (HTML) (PDF)
Explains how to access iChat services and buddies and use iChat Theater through code samples.
Apple Applications, General, Internet & Web 2007-10-31
Providing PDF Workflow Options in the Print Dialog (HTML) (PDF)
Installation information and examples, including the use of Automator workflows.
Printing 2007-10-31
QTKit Capture Programming Guide (HTML) (PDF)
Describes how to capture media and output it QuickTime movies.
QuickTime 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).
Design Guidelines, Scripting & Automation, Tools 2007-10-31
Sync Services Programming Guide (HTML) (PDF)
Explains how to add syncing to your applications.
Apple Applications, Internet & Web, Syncing 2007-10-31
User Defaults Programming Topics for Cocoa (HTML) (PDF)
Explains how to use the Cocoa defaults system to create and save user preferences.
Data Management, User Experience 2007-10-31
Exception Programming Topics for Cocoa (HTML) (PDF)
Explains how to raise and handle exceptions in Cocoa applications.
Objective-C Language, Performance 2007-10-02
Dates and Times Programming Topics for Cocoa (HTML) (PDF)
Explains how to manage Cocoa dates and times.
Data Management 2007-09-04
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
Code Loading Programming Topics for Cocoa (HTML) (PDF)
Explains how Cocoa applications can dynamically load code during execution.
Resource Management 2007-08-10
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
Interface Builder Plug-In Programming Guide (HTML) (PDF)
Describes the process for creating custom Interface Builder palettes.
Tools 2007-07-18
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
Pasteboard Programming Topics for Cocoa (HTML) (PDF)
Explains how to transfer data using pasteboard operations in Cocoa.
Events & Other Input, Interapplication Communication, User Experience 2007-07-13
Sync Services Tutorial (HTML) (PDF)
Explains how to debug multiple syncing applications using the Syncrospector development tool.
Apple Applications, Internet & Web, Syncing, Tools 2007-07-11
Cocoa Application Tutorial Using Bindings (HTML) (PDF)
A hands-on introduction to Cocoa bindings.
Design Guidelines 2007-07-10
Sort Descriptor Programming Topics (HTML) (PDF)
Explains how to use sort descriptors to specify the sorting of collections.
Data Management 2007-07-10
User Interface Validation (HTML) (PDF)
Explains how to use the standard mechanism to validate user interface items in Cocoa.
Design Guidelines, User Experience 2007-07-10
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
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
Distributed Objects Programming Topics (HTML) (PDF)
Explains how Objective-C objects in different threads or different processes communicate.
Interapplication Communication, Networking, Objective-C Language 2007-06-06
Attributed Strings Programming Guide (HTML) (PDF)
Explains how to use attributed strings, which manage attributes of character strings or individual characters.
Data Management, 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
Spotlight Importer Programming Guide (HTML) (PDF)
Describes the role of metadata importers and how to write them.
File Management 2007-05-27
Spotlight Overview (HTML) (PDF)
Introduces the main components and services of Apple's metadata technology.
Design Guidelines 2007-05-27
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
Resolution Independence Guidelines (HTML) (PDF)
Describes resolution independence and how to start updating applications to support high-resolution monitors.
Graphics & Imaging, User Experience 2007-05-04
Notification Programming Topics for Cocoa (HTML) (PDF)
Explains how to send and receive information about events in Cocoa programs.
Design Guidelines, Events & Other Input 2007-05-03
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
Workspace Services Programming Topics (HTML) (PDF)
Explains how to use the services the workspace class provides to Cocoa applications.
Interapplication Communication 2007-03-06
Accessibility Programming Guidelines for Cocoa (HTML) (PDF)
Explains how Cocoa applications make their user interface available to external assistive applications.
Accessibility, Design Guidelines, User Experience 2007-02-08
Text Input Management (HTML) (PDF)
Explains how to use input servers, input managers, and text views in Cocoa.
Events & Other Input, Text & Fonts 2007-02-08
Core Audio Overview (HTML) (PDF)
Provides an overview of Core Audio and its programming interfaces.
Audio 2007-01-08
Text Attachment Programming Topics for Cocoa (HTML) (PDF)
Expalins how to add graphics and other attachments to text.
Text & Fonts 2006-12-05
Application File Management (HTML) (PDF)
Explains how Cocoa applications can use, manipulate, and "own" files.
File Management 2006-11-07
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
Matrix Programming Guide for Cocoa (HTML) (PDF)
Explains how to use Cocoa matrices.
User Experience 2006-11-07
Sound Programming Topics for Cocoa (HTML) (PDF)
Explains how to load and play audio data in Cocoa.
Audio 2006-11-07
GCC Porting Guide (HTML) (PDF)
Provides guidance on how to migrate projects to new GCC releases.
Intel-Based Macs 2006-10-03
Performance Overview (HTML) (PDF)
Introduces the factors that determine performance.
Performance 2006-10-03
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
Slider Programming Topics for Cocoa (HTML) (PDF)
Explains how to use Cocoa sliders.
User Experience 2006-10-03
Sheet Programming Topics for Cocoa (HTML) (PDF)
Explains how to use Cocoa sheets.
User Experience 2006-09-05
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
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
Software Delivery Guide (HTML) (PDF)
Explains how to distribute and install Mac OS X software using PackageMaker and Installer.
Tools, User Experience 2006-07-24
Code Size Performance Guidelines (HTML) (PDF)
Guidelines for reducing the size of an application binary.
Performance 2006-06-28
Drag and Drop Programming Topics for Cocoa (HTML) (PDF)
Explains how to implement drag and drop in Cocoa.
Events & Other Input, Interapplication Communication, User Experience 2006-06-28
Memory Usage Performance Guidelines (HTML) (PDF)
Guidelines for improving the performance of memory-related code.
Performance 2006-06-28
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
Printing Programming Topics for Cocoa (HTML) (PDF)
Explains how to support printing in Cocoa applications.
Graphics & Imaging, Printing 2006-06-28
Scroll View Programming Guide for Cocoa (HTML) (PDF)
Describes how to use scroll views in Cocoa applications.
Graphics & Imaging, User Experience 2006-06-28
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, User Experience 2006-06-28
Animation Programming Guide for Cocoa (HTML) (PDF)
Describes how to use Cocoa animation objects to enhance user interface transitions.
Graphics & Imaging 2006-05-23
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
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
Assertions and Logging (HTML) (PDF)
Explains how to use assertions and logging to diagnose problems in Cocoa applications.
Objective-C Language, Performance 2006-04-04
Coding Guidelines for Cocoa (HTML) (PDF)
Naming guidelines for Cocoa API and design advice to framework developers.
Design Guidelines, Objective-C Language 2006-04-04
Drawing Performance Guidelines (HTML) (PDF)
Guidelines for improving the speed of drawing code.
Performance 2006-04-04
Interacting with the Operating System (HTML) (PDF)
Explains how Cocoa applications manage tasks and get information about hosts and processes.
Interapplication Communication, Process Management, Resource Management 2006-04-04
Launch Time Performance Guidelines (HTML) (PDF)
Guidelines for improving the launch performance of an application.
Performance 2006-04-04
Table View Programming Guide (HTML) (PDF)
Explains how to use Cocoa table views.
User Experience 2006-04-04
Spotlight Query Programming Guide (HTML) (PDF)
Describes how to add Spotlight searching to your applications.
File Management 2006-03-08
Mac OS X Printing System Overview (HTML) (PDF)
Introduces Apple's printing architecture. Includes a road map for developing software.
Printing 2006-02-07
Segmented Controls Programming Guide for Cocoa (HTML) (PDF)
Explains how to use Cocoa segmented controls.
User Experience 2006-02-07
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, Text & Fonts, User Experience 2005-12-06
Bundle Programming Guide (HTML) (PDF)
Explains how to use Core Foundation bundle objects to organize resources.
Resource Management 2005-11-09
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
AltiVec/SSE Migration Guide (HTML) (PDF)
Explains how to convert PowerPC AltiVec code to Intel SSE code.
Intel-Based Macs 2005-09-08
Cocoa Performance Guidelines (HTML) (PDF)
Guidelines for improving the performance of Cocoa applications.
Performance 2005-08-11
QuickTime Overview (HTML) (PDF)
Introduces the main concepts and services of QuickTime.
QuickTime 2005-08-11
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
Code Speed Performance Guidelines (HTML) (PDF)
Guidelines for improving the performance and efficiency of code.
Performance 2005-07-07
Color Management Overview (HTML) (PDF)
Introduces basic concepts and defines color spaces.
Graphics & Imaging 2005-07-07
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
File-System Performance Guidelines (HTML) (PDF)
Guidelines for improving the performance of file-related code.
Performance 2005-07-07
Using PostScript Printer Description Files (HTML) (PDF)
Information for printer vendors. Includes installing files, PPD/PDE binding, and grouping features.
Printing 2005-07-07
XML-RPC and SOAP Programming Guide (HTML) (PDF)
Explains how to make remote procedure calls from applications or from AppleScript scripts.
Interapplication Communication, Internet & Web, Scripting & Automation 2005-03-03
Browsers (HTML) (PDF)
Explains how to use Cocoa browsers.
User Experience 2004-08-31
Font Panel (HTML) (PDF)
Explains how to use the Cocoa Font panel.
Text & Fonts, User Experience 2004-08-31
Text Attributes (HTML) (PDF)
Explains how to work with attributes, the distinguishing characteristics of rich text.
Text & Fonts 2004-02-16
Text Input and Output (HTML) (PDF)
Explains how to read and write text files in Cocoa.
Text & Fonts 2004-02-10
Spell Checking (HTML) (PDF)
Explains how to use the spell-checking facilities in the Cocoa text system.
Text & Fonts, User Experience 2004-02-09
Text Fields (HTML) (PDF)
Explains how to use Cocoa text fields.
Text & Fonts, User Experience 2004-02-09
Text Views (HTML) (PDF)
Explains how to use Cocoa text views.
Text & Fonts, User Experience 2004-02-09
Tab Views (HTML) (PDF)
Explains how to use Cocoa tab views.
User Experience 2003-11-06
Speech (HTML) (PDF)
Explains Cocoa's interfaces to the speech synthesis and speech recognition technologies.
Accessibility, User Experience 2003-08-08
Boxes (HTML) (PDF)
Explains how to use Cocoa boxes.
User Experience 2003-02-15
Drawers (HTML) (PDF)
Explains how to use Cocoa drawers.
User Experience 2003-02-04
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
Combo Box Programming Topics (HTML) (PDF)
Explains how to use Cocoa combo boxes.
User Experience 2002-11-12
Debugging Cocoa Applications (HTML) (PDF)
Tips and techniques for debugging Cocoa applications.
Performance 2002-11-12
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.
Graphics & Imaging, User Experience 2002-11-12
Progress Indicators (HTML) (PDF)
Explains how to use Cocoa progress indicators.
User Experience 2002-11-12
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.
Interapplication Communication, User Experience 2002-11-12
Undo Architecture (HTML) (PDF)
Explains how to record information in Cocoa so a user can reverse an operation's effect.
Data Management, Design Guidelines, User Experience 2002-11-12
Video (HTML) (PDF)
Explains how to use QuickTime movies in Cocoa.
QuickTime 2002-11-12