The overall architecture of iOS (take iOS8 as an example) is shown below:
From cocoa touch to core OS the four tiers below contain all the APIs that are used to develop iOS applications (third-party frameworks are based on these layers). Each layer also contains a number of frameworks . A framework is a collection of many classes, methods, functions, and documents that are organized in a logical way to make our development easier. Foundation, as its name implies, is the framework that lays the groundwork for all iOS application development, including not only collections of objects such as structs, arrays, dictionaries, collections, but also memory management, processing of the underlying file system, storage objects, and so on.
These four layers are described below:
1.Cocoa Touch Layer
This layer provides basic system services for building iOS apps, such as multitasking, touch input and push notifications, and key frameworks.
2.Media Layer
The media layer provides graphics, audio, video, and airplay technologies, including frameworks such as:
(Note: Missing the assets Library, access to the user's pictures and videos.) )
3.Core services Layer
This layer provides technologies such as icloud, in-app purchases, SQLite databases, and XML support, including the main frameworks such as:
4.Core OS Layer
This layer provides some low-level functionality, which is generally not used directly in development. This layer includes the main frameworks such as:
Of these four tiers, the most common are two frameworks: one is the Uikit framework in the cocoa touch layer and the Foundation framework in the core services layer. Only the foundation framework is introduced here, and the Uikit framework will be introduced later. All iOS programs are composed of a large number of objects, the root object of which is nsobject,nsobject in the foundation framework, the specific class structure is as follows:
Start with a top-down look at the full picture, and the specific objects in the foundation framework will be introduced in succession.
Objective-c:foundation Framework-Overview