|
|
< Previous PageNext Page > |
Applications sometimes have supplementary code modules—that is, code that isn’t compiled into the application executable. This supplementary code may take the form of a framework, a shared library (CFM or otherwise), a plug-in, a helper application, or some other type of software.
There are various reasons for this compartmentalizing of application code. One is efficiency; for example, a software developer might have a suite of applications that all rely on the same framework or that make use of the same helper application, such as a custom document viewer. Another reason is performance; an application may decide to defer loading a module such as a plug-in until the user requests it. Or an application may be designed from the outset to be extensible.
The frameworks and shared libraries in the application package
are those needed for the application to run, or at least to be complete.
However, the application package does not include the Apple-supplied
frameworks to which the application links. These are installed in
the standard system location /System/Library/Frameworks
.
Installers should not delete frameworks in an application package
or move them somewhere else.
The application bundle has two directories for the various types of supplementary code:
Frameworks/
PlugIns/
The remainder of this section explains the purposes and issues
related to the first three of these directories. For a description
of the PlugIns
directory,
see “Applications and Loadable Bundles”.
The Frameworks
directory
contains frameworks (or shared libraries) that are inextricably bound
to the application. These frameworks are private to the application.
Only the application itself uses the frameworks in this directory,
and no other application does, including applications in the same
“suite” or from the same developer. The dynamic shared libraries
of these private frameworks are revision-locked and will not be superseded
by any other, even newer, versions that may be available to the
operating system.
An application always uses the code in Frameworks
.
If a framework or shared library is missing from Frameworks
,
the application cannot launch.
Listing 5-1 illustrates how a typical private framework might be stored in the application bundle.
|
< Previous PageNext Page > |
Last updated: 2003-08-21
![]() |
![]() |
![]() |
![]() | ||
![]() | ||
Get information on Apple products.
Visit the Apple Store online or at retail locations. 1-800-MY-APPLE Copyright © 2003 Apple Computer, Inc. All rights reserved. | Terms of use | Privacy Notice |