Many of Xcode’s products take the form of packages, directory trees that the Finder presents as single files. Let’s pause to consider the problem of resources. Resources are the sorts of data that were historically handled by what is now the Carbon Resource Manager: strings, lookup tables, images, human-interface layouts, sounds, and the like. One of the innovations of the classic Macintosh software architecture was the separation of such constant or parameterized data from the executable code of applications.
Before Mac OS X, the customary vehicle for aggregating packets of data into a single file system entity ...