美文网首页面试疯-iOS杂技术文章
【iOS基础】系统框架汇总

【iOS基础】系统框架汇总

作者: 亲爱的大倩倩 | 来源:发表于2016-08-04 18:47 被阅读668次

    iOS系统架构

    iOS系统架构分下面四层,每层都建立在它的下面一层基础之上。

    • Cocoa Touch(可触摸层):代表UIKit

    负责用户的触摸交互操作,为程序提供常用框架,大部分框架与界面有关

    • Mdia(媒体层):代表Core Graphics/Core Animation/Open GL ES

    通过它我们可以使用各种媒体文件,可以绘制图形,制作动画以及音频视频录制

    • Cocoa Services(核心服务层):代表Foundation/Core Data

    通过它可以访问一些服务

    • Core OS(核心操作系统层)

    可以直接和硬件设备交互,我们可以做内存管理,文件系统,电源管理等操作

    延伸

    OC是C语言的扩展集,OS X和iOS平台上所有应用程序都是用OC语言开发的
    OS X:苹果电脑系统
    iOS: iPhone/iPad移动系统
    苹果提供了两种工具包,都是用OC语言开发的
    Cocoa:针对OS X系统
    Cocoa Touch:针对iOS系统

    什么是框架

    框架是一种把头文件,库,图片,声音等内容聚集在一个独立单元中的集合体
    每个框架都是一个重要的技术集合,通常包含数十甚至上百个头文件,每个框架都有一个主头文件,它包含了框架内所有的头文件,通过在头文件中使用#import,可以访问框架内的所有功能

    系统框架Foundation和UIKit

    在你开发时,主要使用的框架就是这两个,我们知道,基本所有的框架都是建立在Foundation框架上面的

    • Foundation
      Foundation框架是以CoreFoundation框架为基础创建的,CF框架是用C语言写的,函数和变量名称以CF开头
      使用Foundation框架我们可以:
      1-NString
      2-NSArray和NSDictionary(只能存对象)
      3-NSNumber(可以将基本数据类型封装成对象)
      4-NSData
      5-NSValue(可以封装任意值)
      6-NSNull
      7-操作URL
      8-执行异步代码

    • UIKit
      UIKit提供了用户界面层使用的类和方法,UIKit框架类组织架构图如下:

    系统Core框架

    • Core Data
      可以创建并管理模型对象
    • Core Graphics
      可以创建复杂图形,包含Quartz 2D接口
    • Core Animation
      创建高级动画和虚拟效果
    • Core Foundation
      基本软件服务,包括常见数据类型,字符串,资源管理及偏好设置等
    • Core Location
      包含确定用户方位信息接口,它可以使用硬件设备来进行定位服务,不需要地图,精度相对略差,省电。
    • Core Media
      包含操作音频和视频的底层
    • Core Motion
      包含访问加速器和陀螺仪的数据接口
    • Core Text
      包含一个文本渲染的布局引擎,可以满足开发中遇到的关于文字排版的所有需求,包括富文本,表情,符号画等
    • Core Image
      图像处理,也可以人脸识别

    系统Kit框架

    • MapKit
      能够使应用程序做一些地图展示与交互的相关功能,必须有地图,精度相对较高,费电。
    • GameKit
      可以为游戏添加一些有趣的功能,例如游戏中的语音聊天,集成GameCenter
    • HealthKit
      可以分享健康和健身数据,也可以自动导入计步数据
    • HomeKit
      智能家居
    • CloudKit
      基于iCloud的云端数据存储
    • ResearchKit
      专为医学研究者打造的一款软件基础架构,可以基于这个架构创建出各种健康应用

    系统其它框架

    • Quartz Core
      提供用户视觉反馈,我们最终看到的界面显示都是图层混合的结果,图层就是Quartz Core中的CALayer
    • OpenGL ES
      提供2D和3D的绘图工具,如模拟飞行,视频游戏
    • Accelerate
      加速器
    • AddressBook
      地址簙
    • AddressBookUI
      地址薄UI
    • MessageUI
      发短信
    • AssetsLibrary
      资源库框架
    • AudioToolbox
      音频工具箱
    • AudioUnit
      音频单元
    • AVFoundation
      可以使用和创建基于时间的视听媒体的框架
    • CFNetwork
      访问网络的接口
    • MediaPlayer
      可以实现视频播放
    • SystemConfiguration
      测试连接网络状态
    • AudioToolbox
      是一个音频接口,用于在线流媒体音乐的播放

    相关文章

      网友评论

      本文标题:【iOS基础】系统框架汇总

      本文链接:https://www.haomeiwen.com/subject/fiocsttx.html