Important: This document may not represent best practices for current development. Links to downloads and other resources may no longer be valid.
Introduction to Carbon Overview
Originally designed to provide a gentle migration path for developers transitioning from Mac OS 9, Carbon is a collection of C programming interfaces that let you implement basic application functionality such as the user interface, event handling, file management, and so on.
This document describes Carbon's place in Mac OS X and gives overviews of the Carbon interfaces. It also describes a wide variety of other programming interfaces that Carbon applications can use, supporting everything from video playback to alternate text input.
As Carbon is a C interface, you can also use all the standard C library APis; however, Mac OS X often has superior replacements (for example, Unicode string manipulation APIs versus the ASCII-related APIs, such as
strcmp in the standard C library).
Who Should Read This Document?
You should read this document if you are new to Mac OS X and would like to write Mac OS X applications using procedural C or C++.
Organization of This Document
This document contains two chapters:
Carbon Basics briefly describes how Carbon fits into Mac OS X and the tools available to build Carbon applications.
The Carbon Factory Tour gives an overview of Carbon managers and services, including nonCarbon specialty services.
Legacy Interfaces describes managers and services that have been superseded by newer technologies. If you are a new developer, this chapter is of historical interest only.
When you are ready to explore Carbon programming, see Getting Started with Carbon to determine which documents to start reading.