Getting Started with Mac OS X

Technology Overview

Mac OS X provides a robust set of tools and technologies to aid you in creating full-featured applications in a short amount of time. The application environments of Mac OS X provide both object-oriented and procedural interfaces supporting development in industry-standard languages such as C, C++, Objective-C, and Java. Whether you have an existing code base or are starting from scratch, there are application environments to help you create full-featured applications quickly.

The documents in Mac OS X Documentation fall into two types: overviews and systemwide concept documents. The overview documents help orient you to the system and provide background information about the application environments and tools you can use to develop software. The systemwide concept documents provide conceptual information that is relevant to all developers, regardless of the application environment they use.

Start Here

Developers who are new to Mac OS X are advised to spend a little time getting familiar with the conventions and architecture of the platform. To do so, you should read the following:

These documents are essential reading before you start writing any code.

Choose a Learning Path

If you’re new to Mac OS X development, you want to become familiar with the tools and technologies available for application development. If you’re an existing developer, you may want to learn more about some systemwide concepts.

Learning About Application Technologies

Once you understand the basic structure of Mac OS X and its technologies, you can expand your knowledge by reading the high-level technology overviews. These overviews provide more depth and orient you toward how you could use that technology in your application.

Learning About Apple Development Tools

Mac OS X provides a suite of developer tools, including design tools, analysis tools, packaging tools, compilers, and debuggers. The Xcode Tools CD contains all of the tools you need to get started developing software for Mac OS X. This CD is included with all shipping Macintosh computers and with retail copies of Mac OS X. The contents of the CD can also be downloaded from the ADC website (

Learning More About Systemwide Concepts

Mac OS X includes many technologies that are not specific to a particular application environment. In the course of development, you may encounter these technologies and want to know more information about them.

  • If you’re unfamiliar with bundles, read Bundle Programming Guide to understand the Mac OS X bundle mechanism and how it is used to distribute applications and other types of software.

  • If you want to create code libraries, read Framework Programming Guide to learn about the framework mechanism and how it is used to distribute libraries on Mac OS X.

  • If your code uses shared system resources, read Multiple User Environments to learn how to protect your resources from accidental intrusion by users in other login sessions.

  • If you want guidelines on how to use and access the file system, read File System Overview.

Next Steps

The Mac OS X Reference Library includes the following high-level resource pages, which can be bookmarked for easy access:

  • Guides

    Apple’s developer documentation on Mac OS X.

© 2003, 2006 Apple Computer, Inc. All Rights Reserved. (Last updated: 2006-12-05)

Did this document help you?
Yes: Tell us what works for you.
It’s good, but: Report typos, inaccuracies, and so forth.
It wasn’t helpful: Tell us what would have helped.