iOS系统框架概述_第1页
iOS系统框架概述_第2页
iOS系统框架概述_第3页
iOS系统框架概述_第4页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、iOS 系统框架概述iOS 操作系统是苹果为公司移动设备提供的操作系统, 为方便应用开发者采用了先进的设计模式。采用了经典的 MVC 设计模式和框架模式。本篇文章我们主要关注 iOS 系 统提供的框架,对 MVC 设计模式不做过多的描述。 我们通常称呼 iOS 的框架为 Cocoa Touch 框架, Cocoa Touch 是一个框架的集合,里面包含了众多的子框架。每一个子框 架都是一个目录,包含了共享资源库,用于访问该资源库中 储存的代码的头文件,以及图像、声音文件等其他资源,共 享资源库定义应用程序可以调用的函数和方法。框架中的类 相互依赖构成一个整体,提供完善的某一方面的服务或解决 方

2、案,多个框架一起实现整个应用程序的结构。由于应用程 序的结构是通用的,开发者通过框架提供的函数和方法,做 细致个性化的处理,从而满足不同应用的不同需求。开发一 个应用程序就是将需求细致化的代码插入到框架提供的设 计中来组合成一个整体完成最终的应用设计。 框架的结构是泛型结构,为应用程序提供一个模板。就像开 发商开发好的毛坯房,你需要用应用程序代码来布置不同的 家具地板门窗,这才让不同的房屋有不同的格调,不同的幸 福。当然,有时候,做装修的时候你需要简单的改装你的房 屋,但承重墙是不能改造的。就像我们之前说的,多个框架起实现了整个应用程序的结构,我们必须接受它所定义好 的应用程序结构,设计的时候

3、让我们的应用适合该结构。 在 Android 开发中,采用模板模式来实现应用程序的一些特 性行为, Android 提供了 Activity,Service,Content providers,Broadcast receivers 四大组件默认功能, 应用通过继 承这些组件根据需要覆盖组件的一些方法来完成应用程序 开发。在 iOS 中则采用代理和协议模式来实现应用的特性行 为。例如 Cocoa Touch 框架集合中的 UIKit 框架的 UIApplication 对象,它负责整个应用程序生命周期的事件分 发。是应用最核心的一个对象, Android 的设计中就需要对 其子类化,覆盖父类的

4、方法, iOS 中则交给 UIApplication 的 代理 AppDeleagte 来处理应用程序的各种状态改变相关事件 (AppDelegate 需要实现 UIApplicationDelegate 协议 ) 。在 iOS 的框架中,大量的使用代理和协议。iOS 提供的许多可使用的框架,构成了 iOS 操作系统的层次 结构,从下到上依次是 :Core OS、Core Ssevices、MediaLayer 、 Cocoa Touch 共四层。下图为 iOS8.3 系统的框架架构图。QS8.3系统框架架构图 Core OS Layer,系统核心层包含大多 数低级别接近硬件的功能,它所包含的

5、框架常常被其它框架 所使用。 Accelerate 框架包含数字信号,线性代数,图像处 理的接口。针对所有的 iOS 设备硬件之间的差异做优化,保 证写一次代码在所有 iOS 设备上高效运行。 CoreBluetooth 框 架利用蓝牙和外设交互,包括扫描连接蓝牙设备,保存连接 状态,断开连接, 获取外设的数据或者给外设传输数据等等。Security 框架提供管理证书,公钥和私钥信任策略, keychain,hash 认证数字签名等等与安全相关的解决方案。Core Services Layer,系统服务层提供给应用所需要的基础的 系统服务。 如 Accounts 账户框架, 广告框架, 数据存

6、储框架, 网络连接框架,地理位置框架,运动框架等等。这些服务中 的最核心的是 CoreFoundation 和 Foundation 框架,定义了所 有应用使用的数据类型。 CoreFoundation 是基于 C 的一组接 口, Foundation 是对 CoreFoundation 的 OC 封装。Media Layer, 媒体层提供应用中视听方面的技术, 如图形图像 相关的 CoreGraphics,CoreImage,GLKit,OpenGLES,CoreText,ImageIO 等等。声音技术相关的 CoreAudio,OpenAL,A VFoundation, 视频相关的Core

7、Media,Media Player 框架,音视频传输的 AirPlay 框架等 等。Cocoa Touch Layer,触摸层提供应用基础的关键技术支持和 应用的外观。如 NotificationCenter 的本地通知和远程推送服 务, iAd 广告框架, GameKit 游戏工具框架,消息 UI 框架, 图片 UI 框架,地图框架,连接手表框架,自动适配等等 在上面所有的框架中,最重要也最经常使用的就是 UIKit 和Foundation 框架。 Foundation 框架提供许多基本的对象类和 数据类型, 使其成为应用程序开发的基础 ,为所有应用程序提供最基本的系统服务,和界面无关。 UIKit 框架提供的类是 基础的 UI 类库,用于创建基于触摸的用户界面, 所有 iOS 应 用程序都是基于 UIKit ,它提供应用程序的基础架构,用于 构建用户界面, 绘图、 处理和用户交互事件, 响应手势等等。 UIKit 通过控制器对象管理屏幕上显示的内容, 界面的跳转, 来组织应用程序。没有 UIKit 框架就没有 iOS 应用程序。 之后的文章里,我们会介

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论