Mac OS X is not a single executable file but a package of files
that includes one or more executable binaries. An application is
a type of bundle—a directory in the system that contains, in a
hierarchical organization, the application executable and the resources
to support that code. An application is also a file package, a directory
that the Finder presents to users as a file.
The design of application packages arises from the recognition
that a running application is more than just the executable code
that gets launched. Several advantages come with this internal organization,
among them ease of installation and uninstallation, the inclusion
of multiple localizations, support for multiple architectures and
volume formats, and the capability for a single application to run,
without modification, in Mac OS 9 and Mac OS X.
Although an application is structurally a bundle, some bundle
components are found mainly, and sometimes only, in applications.
Users tend to think of such things as help information, preferences,
assistants, and plug-ins as application resources. Although, technically,
nothing prevents these resources from belonging to, say, a loadable
bundle, they are commonly associated with applications. This chapter
focuses on how these resources are packaged in an application bundle.
For a general description of bundles, see the chapter “Bundles”.
An Application Is a Bundle
Application Frameworks, Libraries, and Helpers
Applications and Loadable Bundles
User Resources in Applications
Last updated: 2003-08-21