IOS框架概览

IOS框架概览

大家好,又见面了,我是全栈君,祝每个程序员都可以多学几门语言。

iOS是执行在iPhone、iPod Touch或iPad上的操作系统,之前叫做iPhone OS,iOS与Mac OS X有共同的基础架构和底层技术。但iOS是依据移动设备的特点而设计的,所以和Mac OS X系统略有差别,比方对多点触摸和加速感应器的支持。

以下来看看iOS框架简单介绍:
iOS 的系统架构分为四个层次:核心操作系统层(Core OS layer)、核心服务层(Core Services layer)、媒体层(Media layer)和可触摸层(Cocoa Touch layer)。下图展示了Mac OS X和iOS系统架构层次的一个对照。

IOS框架概览

从上图中我们能够发现Mac OS X与iOS的系统架构层次仅仅有最上面一层不同,由Cocoa框架换成了Cocoa Touch,因此开发iOS应用程序与开发Mac OS X程序是相似的,如今就让我们来详细看看每层所包括的内容。
事实上iOS是基于UNIX的,所以我们全然能够相信这个操作系统,要知道从系统的稳定性上来说它要比其它操作系统的产品好非常多。
位于iOS系统架构最以下的一层是核心操作系统层,它包含内存管理、文件系统、电源管理以及一些其它的操作系统任务。它能够直接和硬件设备进行交互。核心操作系统层包含以下这些组件:
 OS X Kernel  Mach 3.0  BSD
 Sockets  Power Mgmt  File System
 Keychain  Certificates  Security
 Bonjour
第二层是核心服务层,我们能够通过它来訪问iOS的一些服务。它包含下面这些组件:
 Collections  Address Book  Networking
 File Access  SQLite  Core Location
 Net Services  Threading  Preferences
 URL Utilities
第三层是媒体层,通过它我们能够在应用程序中使用各种媒体文件,进行音频与视频的录制,图形的绘制,以及制作基础的动画效果。它包含下面这些组件:
 Core Audio  OpenGL  Audio Mixing
 Audio Recording  Video Playback  JPG,PNG,TIFF
 PDF  Quartz  Core Animation
 OpenGL ES
最上面一层是可触摸层,这一层为我们的应用程序开发提供了各种实用的框架,而且大部分与用户界面有关,本质上来说它负责用户在iOS设备上的触摸交互操作。它包含下面这些组件:
 Multi-Touch Events  Core Motion  Camera
 View Hierarchy  Localization  Alerts
 Web Views  Image Picker  Multi-Touch Controls
在Cocoa Touch层中的非常多技术都是基于Objective-C语言的。Objective-C语言为iOS提供了像集合、文件管理、网络操作等支持。像 UIKit框架,它为应用程序提供了各种可视化组件,比方像窗体(Window)、视图(View)和button组件(UIButton)。Cocoa Touch层中的其它框架,对我们在应用程序中的开发来说也是非常实用的,如訪问用户通信录功能框架、获取照片信息功能的框架、负责加速感应器和三维陀螺仪等硬件支持的框架。

iOS框架介绍

什么是框架?本质上来说它是帮助我们完毕各种特定功能的软件库。
我 们编写的应用程序项目,都是从Cocoa Touch层開始的,详细来说就是从UIKit Framework開始的。当在编敲代码的过程中须要用到一些特殊功能的时候,我们应该从框架的最顶端技术開始寻找对应的框架,仅仅有在上层结构无法解决时,才干使用其下层的技术。事实上,顶层的框架已经涵盖了我们绝大多数须要的功能。
表1-1列出了一些经常使用的iOS SDK框架。

 IOS框架概览

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/118553.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • python hexdump_hexdump用法[通俗易懂]

    python hexdump_hexdump用法[通俗易懂]可用参数[-bcCdovx][-eformat_string][-fformat_file][-nlength][-sskip]file…参数含义:-b单字节八进制显示,十六进制显示偏移量,每行显示16个字符,每字符用三位显示,不足补零,列间以空格分隔-c单字节字符显示,十六进制显示偏移量,每行显示16个字符,每字符三位显示,不足补空格,列间以空格分隔-C标准十六进制…

    2022年9月21日
    1
  • SQL中的cast()函数「建议收藏」

    SQL中的cast()函数「建议收藏」CAST函数用于将某种数据类型的表达式显式转换为另一种数据类型。CAST()函数的参数是一个表达式,它包括用AS关键字分隔的源值和目标数据类型。语法:CAST(expressionASdata_type)expression:任何有效的SQServer表达式。AS:用于分隔两个参数,在AS之前的是要处理的数据,在AS之后是要转换的数据类型。data_type:目标系统所提供的

    2022年4月18日
    170
  • 16G kingston U盘 解除写保护[通俗易懂]

    16G kingston U盘 解除写保护[通俗易懂]前些天买的16Gkingstonu盘忽然有了写保护,但是拆开u盘又没有看到有写保护开关。纠结加郁闷。然后一天后又忽然发生了电脑无法识别U盘,连盘符也读不出来了。里面好多资料全无,彻底让我伤心了,

    2022年9月10日
    4
  • PyCharm常用设置(图解)

    PyCharm常用设置(图解)1.保存设置pycharm中的设置是可以导入和导出的,file>exportsettings可以保存当前pycharm中的设置为jar文件保存在桌面上2.导入设置重装时可以直接importsettings>jar文件,就不用重复配置了确认是否要导入点击确认重新启动3.设置Python自动引入包设置Python自动引入包,要先在…

    2022年8月27日
    5
  • JavaScript触屏滑动API介绍

    随着触屏手机、平板电脑的普及和占有更多用户和使用时间,触屏的触碰、滑动等事件也成为javaScript开发不可避免的知识,现在何问起就和大家一起学习js的触屏操作,js的触屏touchmove事件,为

    2021年12月28日
    42
  • 一种基于Linux文件系统的数据恢复方法_武汉病例轨迹

    一种基于Linux文件系统的数据恢复方法_武汉病例轨迹问题阶段起因:昨天晚上思路不是很清晰(上了一天班回来有点蒙),还是强忍着疲惫想搞事情,结果悲剧了……本来想拿SD卡做一张linux烧录卡,烧录脚本是很久以前写的,有git记录,一直不成功,就回退了几次提交,然后执行的时候没有给脚本传参(/dev/sd**),结果脚本中默认磁盘设备为/dev/sdb,在现在电脑上是一块数据磁盘,执行到一半的时候由于某些原因意外退出,但还是有一些命令执行,比

    2025年5月30日
    0

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号