进行iOS开发后对其框架有了一定的了解,今天来系统的总结下。
iOS的框架也被称为Cocoa Touch(Cocoa)框架,Cocoa Touch是一个框架的集合,里面包含了众多的子框架。每个子框架都包含了共享资源库,你可以访问其头文件、声音以及视频等资源,我们设计一款app其实就是细致化地利用各个框架中的函数和方法。
iOS的整体系统框架图如下图所示,
iOS的系统架构主要由
- Application Layer(应用层):这一层主要就是app了,主要由开发人员根据应用需求完成。
- Cocoa Touch Layer(触摸层):提供应用基础的关键技术支持和应用的外观。例如多任务、触摸输入、推送通知和许多其它的高级系统服务。其中UIKit框架至关重要。
- Media Layer (媒体层):提供应用中视听方面的技术。图像、声音、视频。
- Core Services Layer(核心服务层):提供给应用所需要的基础的系统服务。如Accounts账户框架,广告框架,数据存储框架,网络连接框架,地理位置框架,运动框架等等。这些服务中的最核心的是CoreFoundation和Foundation框架,定义了所有应用使用的数据类型。CoreFoundation是基于C的一组接口,Foundation是对CoreFoundation的OC封装。
- Core OS Layer (核心系统操作层):核心系统层包含大多数低级别接近硬件的功能。比如硬件连接统一,针对所有的iOS设备硬件之间的差异做优化,保证写一次代码在所有iOS设备上高效运行。蓝牙连接。管理证书,公钥和私钥信任策略等等。
- The Kernel and Device Drivers layer(内核和驱动层):Darwin 即操作系统的核心,包括系统内核、驱动、Shell 等内容,这一层是开源的,其所有源码都可以在 opensource.apple.com 里找到。
具体框架一览:
其中最重要的也是最常用的是UIKit 和 Foundation,和界面无关的类基本是Foundation框架的,和界面相关的是UIKit框架。
参考:
https://www.cnblogs.com/kenshincui/p/3885689.html