iphone文档整理

上传人:第*** 文档编号:32820347 上传时间:2018-02-12 格式:DOCX 页数:8 大小:65.01KB
返回 下载 相关 举报
iphone文档整理_第1页
第1页 / 共8页
iphone文档整理_第2页
第2页 / 共8页
iphone文档整理_第3页
第3页 / 共8页
iphone文档整理_第4页
第4页 / 共8页
iphone文档整理_第5页
第5页 / 共8页
点击查看更多>>
资源描述

《iphone文档整理》由会员分享,可在线阅读,更多相关《iphone文档整理(8页珍藏版)》请在金锄头文库上搜索。

1、1iPhone 开发模式:1. 开发时可以采用 MVC(Model ,view 和 Controller)模式。MVC 模式是将你的代码风格成独立的功能模块的良好方法。模型(Model)部分定义了底层数据引擎并负责维护这些数据的整合;视图(View)部分定义了用户界面,它并不知道显示在界面上的原始数据的具体含义;控制器(Controller)部分像是模型和视图之间的一坐桥梁,负责更新它们。2. TargetAction(目标-操作)模式控件(Controls)采用目标-行动模式来提醒程序用户的交互。当用户按照预定义的方式与某个控件交互时(例如按了某个按钮 ),控件会发送一个消息 (动作)给指定

2、的对象( 目标)。当收到消息时,目标对象根据消息采用相应的方式进行响应( 例如更新程序状态来响应按钮点击)。3.Delegation(委托)模式。代理模式是一种可以不必通过继承却可以改变复合类行为的途径。你可以将你的用于改变复合类行为代码放到单独的代理对象中有复合类来调用,而不必去继承。复合类会调用代理对象中的方法从而给它一次运行自己代码的机会来更改复合类的行为4.管理内存模型(Managed Memory Model)Objective-C 采用 引用计数的方式来决定合适清理对象所占的内存。当对象初次创建时,它的引用计数为 1。其他对象可以调用改对象的 retain, release 或 a

3、utorelease 方法增加或减少此组件的引用计数。当对象的引用计数为 0 时,Objective-C 运行环境会清理掉该对象所占的内存。iPhone OS 技术分层:Figure1 iPhone OS 技术分层这样的分层给开发带来了多种选择。下面两层与硬件部分直接交互,例如,Core OS 和 Core Services层包含了 iPhone OS 的基本接口,包括文件的访问、底层数据类型、Bonjour 服务和网络的 Sockets 等。这些接口大部分是基于 C 语言的,包括的技术有: Core Foundation、CFNetwork、SQLite 、POSIX 线程的访问和 UNIX

4、 sockets。我觉得 iPhone 的内核应该是用 C 写的,而且 Mach 的内核是一种 UNIX 的内核,所以使用这两层进行程序开发,就相当于使用 Linux 的 API 进行程序开发,在这两层,你可以使用你的代码直接操作硬件,当然这需要你对较底层的开发比较熟悉。上面两层会有更多高级的技术,这些技术使用基于 C 和基于 Objective-C 的混合接口。比如,Media层包含了支持 2D 和 3D 绘图、音频和视频的基本技术。这一层包含了基于 C 的技术:OpenGL ES, Quartz, and Core Audio。同时也包含 Core Animation,这时一种基于 Obj

5、ective-C 的高级的动画引擎。Objective-C语言是 C 的面向对象的扩展,在这里可以看作是 Linux 中 QT 库一样,你可以像使用 QT 的类和接口那样来使用基于 Objective-C 的接口,这些都是使用 Objective-C 语言封装好的,它可以缩短开发的时间,但前提是要熟悉 Objective-C 语言。2最上面一层Cocoa Touch 层中,大部分的技术使用 Objective-C。这层中的许多框架为你的程序提供了基础的底层构造。比如,Foundation 框架为集合、文件管理和网络的操作提供了面向对象的支持。UIKit框架为你的程序提供可视化的底层构架,包括窗

6、口、视图、控件类和管理这些对象的控制器。这一层中的其它框架允许你访问用户的联系人和图片信息,以及设备上的加速器和其它硬件特征。在看多几个 iPhone的程序之后,发现使用最多的就是 UIKit 框架,它提供了一个简单的图形界面程序所需要的控件,所以你可以是不熟悉 Linux 或 Unix 开发的程序员,你只要学会 UIKit 框架中控件的使用方法,你就可以创建iPhone 程序。新项目的出发点应该是 Cocoa Touch 层,特别是 UIKit 框架。当选择何种附加技术时,建议你从高层的框架开始,需要时,则应求助于低层的框架。如果要在你的程序中使用最少的工作量来支持标准的系统行为,更高层的框

7、架会使这一过程变得简单。当要实现更高层中没有提供的定制行为时,这是唯一使用更低层框架的时间。iPhone OS 的更详细的技术概览,请参考 iPhone OS 编程指南 。个人认为,初学者应该从最上一层开始,尤其是从没有 Mac 开发经验的人。上层的框架会节省你开发的时间,并且上层的框架已经非常强大,可以基本满足一个简单程序所需的所有技术。 Cocoa Touch 层Cocoa Touch 是 iPhone OS 架构中最重要层之一。它包括开发 iPhone 应用的关键框架,当开发 iPhone应用时,开发者总是从这些框架开始,然后向下追溯到需要的较低层框架。Cocoa Touch 层包括 U

8、IKit 框架,基础框架(Foundation Framework )和电话本 UI 框架(Address Book UI Framework)。(1)UIKit 框架UIKit 框架(UIKit.framework )包含 Objective-C 程序接口,提供实现图形、事件驱动的iPhone 应用的关键架构。iPhone OS 中的每一个应用采用这个框架实现如下核心功能: 应用管理; 支持图形和窗口; 支持触摸事件处理; 用户接口管理; 提供用来表征标准系统视图和控件的对象; 支持文本和 Web 内容; 通过 URL scheme 与其他应用的集成。为提供基础性代码建立应用,UIKit 也

9、支持一些与设备相关的特殊功能,如下所示: 加速计数据; 内建 Camera; 用户图片库; 设备名称和模式信息。(2)基础框架(Foundation Framework)基础框架(Foundation.framework)支持如下功能: Collection 数据类型(包括 Arrays、Sets ); Bundles; 字符串管理; 日期和时间管理; 原始数据块管理; 首选项管理; 线程和循环; URL 和 Stream 处理;3 Bonjour; 通信端口管理; 国际化。(3)电话本 UI 框架(Address Book UI Framework)电话本 UI 框架(AddressBook

10、UI.framework )是一个 Objective-C 标准程序接口,主要用来创建新联系人,编辑和选择电话本中 存在的联系人。它简化了在 iPhone 应用中显示联系人信息,并确保所有应用使用相同的程序接口,保证应用在不同平台的一致性。 媒体层(Media layer)媒体层包括图像、音频和视频技术,采用这些技术在手机上创建最好的多媒体体验。更重要的是,应用这些技术开发的应用将有更好的视听效果。利用 iPhone OS 高层框架可以快速地创建先进的图像和动画。媒体层包括图像技术(Graphics Technologies,包括 Quartz、Core Animation 和 OpenGL

11、ES),音频技术(Audio Technologies,包括 Core Audio 和 OpenAL)和视频技术( Video Technologies)。(1)图像技术(Graphics Technologies)高质量图像是所有 iPhone 应用的一个重要的组成部分。任何时候,开发者可以采用 UIKit框架中已有的视图和功能以及预定义的图像来开发 iPhone 应用。然而,当 UIKit 框架中的视图和功能不能满足需求时,开发者可以应用下面描述的技术和方法来制作视图: Quartz。核心图像框架( CoreGraphics.framework)包含了 Quartz 2D 画图 API,Q

12、uartz 与在Mac OS 中采用的矢量图画引擎是一样先进的。Quartz 支持基于路径(Path-based )画图、抗混淆(Anti-aliased)重载、梯度 (Gradients)、图像(Images )、颜色( Colors)、坐标空间转换(Coordinate-space Transformations)、pdf 文档创建、显示和解析。虽然 API 是基于C 语言的,它采用基于对象的抽象表征基础画图对象,使得图像内容易于保存和复用。 核心动画(Core Animation)。Quartz 核心框架(QuartzCore.framework)包含CoreAnimation 接口,

13、Core Animation 是一种高级动画和合成技术,它用优化的重载路径(Rendering Path )实现复杂的动画和虚拟效果。它用一种高层的 Objective-C 接口配置动画和效果,然后重载在硬件上获得较好的性能。Core Animation 集成到 iPhone OS 的许多部分,包括 UIKit 类如 UIView,提供许多标准系统行为的动画。开发者也能利用这个框架中的Objective-C 接口创建客户化的动画。 OpenGL ES。OpenGL ES 框架(OpenGLES.framework)符合 OpenGL ES v1.1 规范,它提供了一种绘画 2D 和 3D 内容

14、的工具。OpenGL ES 框架是基于语言的框架,与硬件设备紧密相关,为全屏游戏类应用提供高帧率(high frame rates )。开发者总是要使用 OpenGL 框架的 EAGL 接口,EAGL 接口是 OpenGL ES 框架的一部分,它提供了应用的 OpenGL ES 画图代码和本地窗口对象的接口。(2)音频技术(Audio Technologies) iPhone OS 的音频技术为用户提供了丰富的音频体验。它包括音频回放,高质量的录音和触发设备的振动功能等。 iPhone OS 的音频技术支持如下音频格式:AAC、Apple Lossless(ALAC)、A-law、IMA/AD

15、PCM (IMA4)、Linear PCM、-law 和 Core Audio 等。 核心音频(Core Audio Family )。核心音频框架家族(Core Audio family of frameworks)提供了音频的本地支持。Core Audio 是一个基于 C 语言的接口,并支持立体声(Stereo Audio)。开发能采用 iPhone OS 的 Core Audio 框架在 iPhone 应用中产生、录制、混合和播放音频。开发者也能通过核心音频访问手机设备的振动功能。 OpenAL。iPhone OS 也支持开放音频库( Open Audio Library, OpenAL

16、)。OpenAL是一个跨平台的标准,它能传递位置音频(Positional Audio)。开发者能应用 OpenAL4在需要位置音频输出的游戏或其他应用中实现高性能、高质量的音频。由于 OpenAL 是一个跨平台的标准,采用 OpenAL 的代码模块可以平滑地移植到其他平台。(3)视频技术(Video Technologies)iPhone OS 通过媒体播放框架( MediaPlayer.framework)支持全屏视频回放。媒体播放框架支持的视频文件格式包括.mov, .mp4,.m4v 和.3gp,并应用如下压缩标准: MPEG4 规范的视频部分; 众多的音频格式,包含在音频技术的列表里,如 AAC、Apple Lossless (ALAC)、A-law、IMA/ADPCM (IMA4)、线性 PCM、-law 和 Core Audio 等。 核心服务层(Core Services Layer)核心服务层为所有应用提供基础系统服务。(1)电话本电话

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 建筑/环境 > 工程造价

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号