Jump To:
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
Apple Human Interface Guidelines (HTML) (PDF)
Introduces the Mac OS X user experience and explains how to design an application for Aqua.
Accessibility, Design Guidelines, User Experience 2008-06-09
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 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 2008-06-09
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, Tools 2008-06-09
Core Animation Programming Guide (HTML) (PDF)
Introduces the main components and services of Core Animation.
Graphics & Imaging 2008-05-06
Xcode Unit Testing Guide (HTML) (PDF)
Explains how to incorporate unit tests into your development process using Xcode.
Design Guidelines 2008-05-02
View Programming Guide for Cocoa (HTML) (PDF)
Explains how to design and implement Cocoa views in applications.
Graphics & Imaging 2008-04-10
Animation Overview (HTML) (PDF)
Describes the animation facilities provided by Mac OS X.
Games, Graphics & Imaging 2008-04-08
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
Uniform Type Identifiers Overview (HTML) (PDF)
Describes uniform type identifiers and how to use them.
File Management, Interapplication Communication 2008-04-08
Accessibility Overview (HTML) (PDF)
Explains how to use the accessibility features built into Mac OS X.
Accessibility 2008-03-11
AppleScript Language Guide (HTML) (PDF)
Defines the AppleScript scripting language. Includes many brief sample scripts.
Scripting & Automation 2008-03-11
CFNetwork Programming Guide (HTML) (PDF)
Explains how to use Core Foundation networking functions to work with low-level BSD sockets.
Networking, Security 2008-03-11
Cocoa Scripting Guide (HTML) (PDF)
Explains how to create scriptable Cocoa applications that use the scripting definition (sdef) format.
Design Guidelines, Scripting & Automation 2008-03-11
Core Animation Cookbook (HTML) (PDF)
Demonstrates common Core Animation tasks.
Graphics & Imaging 2008-03-11
Cursor Management (HTML) (PDF)
Explains how to set the cursor and handle cursor-update events in Cocoa applications.
Events & Other Input, User Experience 2008-03-11
Garbage Collection Programming Guide (HTML) (PDF)
Describes the garbage collection system for Cocoa.
Design Guidelines, Objective-C Language, Performance, Runtime Architecture 2008-03-11
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
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
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, Design Guidelines 2008-02-08
Font Handling (HTML) (PDF)
Explains the Cocoa font management system and how users select fonts.
Text & Fonts 2008-02-08
Low-Level Core Data Tutorial (HTML) (PDF)
A hands-on guide to creating a command-line utility using low-level features of Core Data.
Data Management, Design Guidelines 2008-02-08
Low-Level File Management Programming Topics (HTML) (PDF)
Explains the low-level ways Cocoa applications can interact with files.
File Management 2008-02-08
Memory Management Programming Guide for Cocoa (HTML) (PDF)
Explains how to allocate and deallocate objects in Cocoa.
Design Guidelines, Objective-C Language 2008-02-08
Model Object Implementation Guide (HTML) (PDF)
Describes issues relating to the design and implementation of model objects
Design Guidelines 2008-02-08
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, Design Guidelines 2008-02-08
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
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
Search Fields (HTML) (PDF)
Explains how to use Cocoa search fields.
User Experience 2008-02-08
Security Overview (HTML) (PDF)
An introduction to computer security concepts and the Mac OS X security APIs.
Security 2008-02-08
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
Threading Programming Guide (HTML) (PDF)
Explains how to use threads in Cocoa applications.
Performance, Process Management 2008-02-08
Xcode User Guide (HTML) (PDF)
Explains how to use the Xcode application to develop software on Mac OS X.
Tools 2008-02-08
Automator Programming Guide (HTML) (PDF)
Describes the concepts and tasks for developing actions, which are bundles loaded by the Automator application.
Apple Applications, Tools 2007-12-11
Button Programming Topics for Cocoa (HTML) (PDF)
Explains how to use Cocoa buttons.
User Experience 2007-12-11
Object-Oriented Programming with Objective-C (HTML) (PDF)
Describes object-oriented programming from the perspective of an Objective-C developer.
Design Guidelines, Objective-C Language 2007-12-11
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
Quartz Composer Custom Patch Programming Guide (HTML) (PDF)
Describes how to create custom patches for distribution.
Graphics & Imaging 2007-12-11
Text Layout Programming Guide for Cocoa (HTML) (PDF)
Explains how the Cocoa text system lays out text on pages.
Text & Fonts 2007-12-11
Token Field Programming Guide for Cocoa (HTML) (PDF)
Describes how to set up and programatically manage a token field.
User Experience 2007-12-11
Apple Help Programming Guide (HTML) (PDF)
Explains how to author, package, and display user help content in Mac OS X.
Apple Applications, User Experience 2007-10-31
AppleScript Overview (HTML) (PDF)
Introduces the technology for writing scripts to control applications. Useful for scripters and application developers.
Scripting & Automation 2007-10-31
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 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
Cocoa Drawing Guide (HTML) (PDF)
Explains how to use Cocoa to draw your application's user interface.
Graphics & Imaging 2007-10-31
Cocoa Fundamentals Guide (HTML) (PDF)
Introduces the basic concepts, terminology, architectures, and design patterns of the Cocoa frameworks and development environment.
Design Guidelines 2007-10-31
Collections Programming Topics for Cocoa (HTML) (PDF)
Explains how to group objects in arrays, sets, or dictionaries in Cocoa.
Data Management 2007-10-31
Debugging with GDB (HTML)
Open-source document that explains how to use GDB to debug programs.
Tools 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
Interface Builder User Guide (HTML) (PDF)
Conceptual information and tasks explaining how to use the Interface Builder application to design user interfaces.
Tools 2007-10-31
Mac OS X Technology Overview (HTML) (PDF)
Introduces Mac OS X and its technologies.
Accessibility 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
String Programming Guide for Cocoa (HTML) (PDF)
Explains how to create, search, concatenate, and draw strings in Cocoa.
Data Management, Text & Fonts 2007-10-18
Exception Programming Topics for Cocoa (HTML) (PDF)
Explains how to raise and handle exceptions in Cocoa applications.
Objective-C Language, Performance 2007-10-02
Text System Overview (HTML) (PDF)
Explains how the Cocoa text system works. Includes a tutorial.
Text & Fonts 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
Document-Based Applications Overview (HTML) (PDF)
Explains how to design and implement Cocoa applications that manage multiple documents.
Design Guidelines 2007-09-04
Resource Programming Guide (HTML) (PDF)
Explains how to work with nib and bundle resources in Mac OS X applications.
Resource 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
Web Kit DOM Programming Topics (HTML) (PDF)
Describes how to use JavaScript in web content and Web Kit-based applications.
Internet & Web 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
Quartz Composer Programming Guide (HTML) (PDF)
Describes how to used the framework to load, play, and control compositions.
Graphics & Imaging 2007-07-11
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
URL Loading System (HTML) (PDF)
Explains how to manipulate URLs and transfer URL contents.
Internet & Web, Networking 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
Key-Value Coding Programming Guide (HTML) (PDF)
Conceptual information about how to access a Cocoa object's values using keys.
Data Management, Design Guidelines 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
Cocoa Bindings Programming Topics (HTML) (PDF)
Explains how to rapidly develop sophisticated user interfaces using Cocoa binding technology.
Design Guidelines, User Experience 2007-05-22
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
Code Signing Guide (HTML) (PDF)
Explains how you can sign your code and why you should.
Security 2007-05-15
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
Runtime Configuration Guidelines (HTML) (PDF)
Conceptual and reference information for dynamically configuring your software.
Design Guidelines 2007-04-18
Dashboard Programming Topics (HTML) (PDF)
Explains Dashboard and Web Kit technologies used in widgets.
Apple Applications 2007-04-13
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
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 2007-04-04
64-Bit Transition Guide for Cocoa (HTML) (PDF)
Explains how to port Cocoa projects to 64-bit addressing.
Design Guidelines 2007-03-22
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 2007-03-20