【iOS】系统框架学习
iOS的系统架构分为四个层次:核心操作系统层(Core OS layer)、核心服务层(Core Services layer)、媒体层(Media layer)和可触摸层(Cocoa Touch layer)。
Core OS : 位于iOS系统架构最以下的一层是核心操作系统层,它包含内存管理、文件系统、电源管理以及一些其它的操作系统任务。它能够直接和硬件设备进行交互。
Core Services : 第二层是核心服务层。我们能够通过它来訪问iOS的一些服务。
Media : 第三层是媒体层,通过它我们能够在应用程序中使用各种媒体文件,进行音频与视频的录制。图形的绘制,以及制作基础的动画效果。
Cocoa Touch : 最上面一层是可触摸层。这一层为我们的应用程序开发提供了各种实用的框架,而且大部分与用户界面有关,本质上来说它负责用户在iOS设备上的触摸交互操作。
在Cocoa Touch层中的非常多技术都是基于Objective-C语言的。Objective-C语言为iOS提供了像集合、文件管理、网络操作等支持。像UIKit框架。它为应用程序提供了各种可视化组件,比方像窗体(Window)、视图(View)和button组件(UIButton)。Cocoa
Touch层中的其它框架。对我们在应用程序中的开发来说也是很实用的。如訪问用户通信录功能框架、获取照片信息功能的框架、负责加速感应器和三维陀螺仪等硬件支持的框架。
相应用开发人员来说,最重要的就是Cocoa Touch框架了。
下图是Mac OS 和 iOS 系统架构的对照图:
作为应用开发人员,尽管一般非常少接触Cocoa Touch与Cocoa下面的层,可是还是非常有必要了解一下他们的作用。
以上IOS的系统框架和Android有非常多相似之处http://blog.csdn.net/xn4545945/article/details/7761417,Android开源。IOS闭源。
很多其它资料:
http://www.cnblogs.com/zhangmangyuan/archive/2013/03/28/iOS.html
http://www.kejixun.com/article/201308/17085.html
xn4545945收集整理:http://blog.csdn.net/xn4545945
【iOS】系统框架学习的更多相关文章
- IOS系统框架
IOS系统框架:ios架构号MAC OS的基础框架相似:ios扮演底层硬件和应用程序的中介,底层为所有应用程序提供基础服务,高层则包含一些复杂巧妙的技术和服务,并且创建的应用程序不能直接访问硬件. C ...
- iOS 系统框架
iOS的系统架构分为四个层次:核心操作系统层(Core OS layer).核心服务层(Core Services layer).媒体层(Media layer)和可触摸层(Cocoa Touch l ...
- iOS 系统框架结构图
- iOS学习——iOS 整体框架及类继承框架图
整理自:IOS 整体框架类图值得收藏 一 整体框架 在iOS开发过程中,对iOS的整理框架的了解和学习是必不可少的一个环节,今天我们就好好来了解一下iOS的整体框架.首先贴一个关于iOS的框架介绍:i ...
- iOS - 开源框架、项目和学习资料汇总(动画篇)
动画 1. Core Animation笔记,基本的使用方法 – Core Animation笔记,基本的使用方法:1.基本动画,2.多步动画,3.沿路径的动画,4.时间函数,5.动画组.2. awe ...
- iOS - 开源框架、项目和学习资料汇总(UI篇)
上下拉刷新控件 1. MJRefresh --仅需一行代码就可以为UITableView或者CollectionView加上下拉刷新或者上拉刷新功能.可以自定义上下拉刷新的文字说明.(推荐)2. SV ...
- iOS 系统架构及常用框架
1.iOS基于UNIX系统,因此从系统的稳定性上来说它要比其他操作系统的产品好很多 2.iOS的系统架构分为四层,由上到下一次为:可触摸层(Cocoa Touch layer).媒体层(Media l ...
- Android入门学习:Android 系统框架及应用程序执行过程
Android基础知识学习 新手上路,还请多多帮助.由于初学,博客内容难免有不正确的地方,还请各位多多指教,相互学习! 主要内容: 1.Android层次架构及主要功能 2.Android编程模型,程 ...
- iOS各框架功能简述以及系统层次结构简单分析
iOS各个框架所对应的功能简单介绍 iOS系统结构层次:
随机推荐
- python--subprocess,粘包现象与解决办法,缓冲区
一. subprocess 的简单用法 import subprocess sub_obj = subprocess.Popen( 'dir', #系统指令 shell=True, #固定方法 std ...
- 20181121笔记(for,数字类型和字符串类型的内置方法)
1.for循环 for循环可以遍历任何序列的项目,如一个列表或者一个字符串. for循环字典时默认取出key: dic={'x':111,'y':222,'z:333'}for k in dic: ...
- (转)UITextField
//初始化textfield并设置位置及大小 UITextField *text = [[UITextField alloc]initWithFrame:CGRectMake(20, 20, 130, ...
- mysql 与QT的连接
第一步:安装 qt开发环境 bi@bi-desktop:~$sudo apt-get install qt4-dev-tools qt4-doc qt4-qtconfig qt4-demos qt4- ...
- LeetCode(98) Validate Binary Search Tree
题目 Given a binary tree, determine if it is a valid binary search tree (BST). Assume a BST is defined ...
- lombok安装、配置、使用
eclipse安装Lombok 运行安装: java -jar ${path}\lombok.jar 选择IDE所在路径点击Install/Update即可使用. 手动安装1. 将lombok.jar ...
- 二分查找与 bisect 模块
Python 的列表(list)内部实现是一个数组,也就是一个线性表.在列表中查找元素可以使用 list.index() 方法,其时间复杂度为O(n).对于大数据量,则可以用二分查找进行优化.二分查找 ...
- Appium自动化-基于java的环境搭建
引言 自动化测试框架搭建主要分为以下几个方面的下载安装及环境配置: 1.jdk 2. adt 3. appium 4. testng插件 工具链接: https://pan.baidu.com/s/1 ...
- 【PL/SQL编程基础】
[PL/SQL编程基础]语法: declare 声明部分,例如定义变量.常量.游标 begin 程序编写,SQL语句 exception 处理异常 end: / 正斜杠表示执行程序快范例 -- Cre ...
- HDU1007 TLE代码和AC代码对比
这题卡了一天,上午开始看算法导论,然后实现了,一开始是wa,后来TLE,由于我开始的实现方式比较笨,而且在递归调用的时候很是混乱,用了好多数组.导致我的代码不断的出问题.具体是算法导论33-4. 后来 ...