iOS应用软件开发基础——第二课_Mac/iOS操作系统构架

来源:互联网 发布:怎么看淘宝等级 编辑:程序博客网 时间:2024/05/29 12:40

一、Mac与iOS框架的区别参考:http://blog.csdn.net/crazyzhang1990/article/details/12503183

二、iOS框架

1、核心操作系统层(Core OS layer)-----包含核心部分、文件系统、网络基础、安全特性、能量管理和一些设备驱动,还有一些系统级别的API。它包括以下这些组件:

      OS X Kernel:操作系统核心,参考http://zh.wikipedia.org/wiki/OS_X。

      Mach 3.0:微内核的操作系统,参考http://zh.wikipedia.org/wiki/Mach。
      BSD:常被当作工作站级别的Unix系统,参考http://zh.wikipedia.org/wiki/BSD。

      Sockets:网络基础,参考http://zh.wikipedia.org/wiki/Berkeley套接字。
      Security:安全特性,用来处理认证,密码管理,安全性管理。    
      Power Management:电源管理。 
      File System:文件系统。
      Keychain Access:钥匙串访问,钥匙串 ( Keychain )是苹果公司Mac OS中的密码管理系统。它在Mac OS 8.6中被导入,并且包括在了所有后续的Mac OS版本中,包括Mac OS X。    
      Certificates:证书。  
      Bonjour:支持页面包含故障诊断、设置、使用方法信息和服务,可为新用户提供帮助。它还提供维修、手册、用户论坛、文章和软件更新等丰富资源。

2、核心服务层(Core Services layer)----提供核心服务,例如字符串处理函数、集合管理、网络管理、URL处理工具、联系人维护、偏好设置等。Core Services在Core OS基础上提供了更为丰富的功能, 它包含了Foundation.Framework和Core Foundation.Framework, 之所以叫Foundation ,就是因为它提供了一系列处理字串,排列,组合,日历,时间等等的基本功能。Foundation是属于Objective-C的API,Core Fundation是属于C的API。它包括以下这些组件:
     Collections:集合管理,Arrays、 Sets等。
     Address Book:用来处理电话薄资料
     Networking:网络管理。
     File Access:文件访问。
     SQLite:轻量级的数据库。   
     Core Location:用来处理GPS定位
     Net Services:网络服务。   
     Threading:线程。
     Preferences:偏好设置。
     URL Utilities:URL处理工具。

3、媒体层(Media layer)----该层框架和服务依赖Core Services层,向Cocoa Touch层提供画图和多媒体服务,如声音、图片、视频等。通过它我们可以在应用程序中使用各种媒体文件,进行音频与视频的录制,图形的绘制,以及制作基础的动画效果。它包括以下这些组件:
     Core Audio:核心音频模组。
     OpenGL:3D绘图。   
     Audio Mixing:
     Audio Recording:  
     Video Playback:  
     JPG,PNG,TIFF:
     PDF:    
     Quartz:2D图像。 
     Core Animation:核心动画模组。
     OpenGL ES:3D图像。

4、可触摸层(Cocoa Touch layer)----该框架基于 iPhone OS应用层直接调用层,如触摸事件、照相机管理等,包该层含UIKit框架和Foundation框架。在Cocoa Touch层中的很多技术都是基于Objective-C语言的。Objective-C语言为iOS提供了像集合、文件管理、网络操作等支持。像UIKit框架,它为应用程序提供了各种可视化组件,比如像窗口(Window)、视图(View)和按钮组件(UIButton)。Cocoa Touch层中的其他框架,对我们在应用程序中的开发来说也是非常有用的,如访问用户通信录功能框架、获取照片信息功能的框架、负责加速感应器和三维陀螺仪等硬件支持的框架。最上面一层是Cocoa Touch,它是Objective-C的API, 其中最核心的部分是UIKit.Framework,应用程序界面上的各种组件,全是由它来提供呈现的,除此之外它还负责处理屏幕上的多点触摸事件,文字的输出,图片,网页的显示,相机或文件的存取,以及加速感应的部分等。它包括以下这些组件:
     Multi-Touch:多点触摸。

     Core Motion:手势。

     View Hierarchy:view层。
     Localization:
     Controls:
     Alerts:
     Web Views:
     Map Kit:
     Image Picker:
     Camera: