【iOS知识学习】_iOS FrameWork相关知识
2013-09-05 21:35
190 查看
框架是一个目录,包含了共享资源库,用于访问该资源库中储存的代码的头文件,以及图像、声音文件等其他资源。共享资源库定义应用程序可以调用的函数和方法。
iOS 提供了许多可在应用程序开发中使用的框架。要使用一个框架,请将它添加到项目,以便应用程序可以链接到它。大多数应用程序都链接到 Foundation、UIKit 和 Core Graphics 框架。根据您为应用程序选取的模板,可能也包括其他框架。如果一组核心框架无法满足应用程序的要求,您总是可以将其他框架添加到项目。
每个框架都属于 iOS 系统的一个层。每个层都建立在它的下层之上。尽可能使用较高级的框架,而非较低级的框架。较高级的框架向较低级的结构提供面向对象的抽象。
在iOS的开发中,框架结构如下图:
从图中可以看出,Foundation和UIKit是iOS开发的核心框架,因为他能满足大多数应用程序开发的需求。
使用 Foundation:
创建和管理集,如数组和字典
访问储存在应用程序中的图像和其他资源
创建和管理字符串
发布和观察通知
创建日期和时间对象
自动发现 IP 网络上的设备
操控 URL 流
异步执行代码
使用 UIKit:
构建和管理用户界面
处理基于触摸和运动的事件
显示文本和网页内容
优化应用程序以实现多任务
创建自定用户界面元素
当然其他的类也很重要,需要我们花更多的时间来学习:
使用 Core Data:
存储对象和从储存处取回对象
支持基本的撤销/重做
自动验证属性值
对内存中的数据进行过滤、分组和整理
使用
支持基于文稿的应用程序
当您想要编写在 iOS 和 OS X 之间直接共享的绘图代码时,使用 Core Graphics。Core Graphics 框架也称为 Quartz,它在这两个平台上几乎相同。
使用 Core Graphics:
***基于路径的绘图
使用边缘模糊化渲染
添加渐变、图像和颜色
使用坐标空间变换
创建、显示和解析 PDF 文稿
使用 Core Animation:
创建自定动画
给图形添加时序功能
支持关键帧动画
指定图形布局约束
将多层更改分组为原子更新
使用 OpenGL ES:
创建 2D 和 3D 图形
***更复杂的图形,如数据可视化、飞行模拟或视频游戏。
访问底层图形硬件
详细信息请参考苹果开发者文档: https://developer.apple.com/library/ios/#documentation/Cocoa/Conceptual/CocoaFundamentals/WhatIsCocoa/WhatIsCocoa.html#//apple_ref/doc/uid/TP40002974-CH3-SW16
iOS 提供了许多可在应用程序开发中使用的框架。要使用一个框架,请将它添加到项目,以便应用程序可以链接到它。大多数应用程序都链接到 Foundation、UIKit 和 Core Graphics 框架。根据您为应用程序选取的模板,可能也包括其他框架。如果一组核心框架无法满足应用程序的要求,您总是可以将其他框架添加到项目。
每个框架都属于 iOS 系统的一个层。每个层都建立在它的下层之上。尽可能使用较高级的框架,而非较低级的框架。较高级的框架向较低级的结构提供面向对象的抽象。
在iOS的开发中,框架结构如下图:
从图中可以看出,Foundation和UIKit是iOS开发的核心框架,因为他能满足大多数应用程序开发的需求。
Foundation 框架为所有应用程序提供基本的系统服务
您的应用程序以及 UIKit 和其他框架,都建立在 Foundation 框架的基础结构之上。Foundation 框架提供许多基本的对象类和数据类型,使其成为应用程序开发的基础。它还制定了一些约定(用于取消分配等任务),使您的代码更加一致,可再用性更好。使用 Foundation:
创建和管理集,如数组和字典
访问储存在应用程序中的图像和其他资源
创建和管理字符串
发布和观察通知
创建日期和时间对象
自动发现 IP 网络上的设备
操控 URL 流
异步执行代码
UIKit 框架提供的类,可用于创建基于触摸的用户界面
所有 iOS 应用程序都基于 UIKit。没有这个框架,就无法交付应用程序。UIKit 提供基础结构,用于在屏幕上绘图、处理事件,以及创建通用用户界面元素。UIKit 还通过管理屏幕上显示的内容,来组织复杂的应用程序。使用 UIKit:
构建和管理用户界面
处理基于触摸和运动的事件
显示文本和网页内容
优化应用程序以实现多任务
创建自定用户界面元素
当然其他的类也很重要,需要我们花更多的时间来学习:
Core Data 框架管理应用程序的数据模型
Core Data 管理对象图。借助 Core Data,您可以创建模型对象(称为被管理的对象)。您管理那些对象之间的关系,并通过框架更改数据。Core Data 利用内建的 SQLite 技术,高效地储存和管理数据。使用 Core Data:
存储对象和从储存处取回对象
支持基本的撤销/重做
自动验证属性值
对内存中的数据进行过滤、分组和整理
使用
NSFetchedResultsController管理表格视图中的结果
支持基于文稿的应用程序
Core Graphics 框架帮助您创建图形
高质量的图形,是所有 iOS 应用程序的一个重要组成部分。在 iOS 中创建图形的最简易便捷方法,是将预渲染的图像与 UIKit 框架的标准视图和控制配合使用,并让 iOS 完成绘图。UIKit 还提供用于自定绘图的类,包括路径、颜色、图案、渐变、图像、文本和变换。尽可能地使用 UIKit(较高级的框架),而非 Core Graphics(较低级的框架)。当您想要编写在 iOS 和 OS X 之间直接共享的绘图代码时,使用 Core Graphics。Core Graphics 框架也称为 Quartz,它在这两个平台上几乎相同。
使用 Core Graphics:
***基于路径的绘图
使用边缘模糊化渲染
添加渐变、图像和颜色
使用坐标空间变换
创建、显示和解析 PDF 文稿
Core Animation 可让您***高级动画和视觉效果
UIKit 提供的动画,是建立在 Core Animation 技术之上的。如果您需要超出 UIKit 功能的高级动画,可以直接使用 Core Animation。Core Animation 接口包含在 Quartz Core 框架中。借助 Core Animation,您创建不同层次的层对象,并对它们进行操控、旋转、缩放、变换等等。通过使用大家所熟悉的 Core Animation 视图式抽象,您可以创建动态用户界面,而无需使用低级的图形 API,如 OpenGL ES 等。使用 Core Animation:
创建自定动画
给图形添加时序功能
支持关键帧动画
指定图形布局约束
将多层更改分组为原子更新
OpenGL ES 框架提供 2D 和 3D 绘图工具
OpenGL ES 支持基础的 2D 和 3D 绘图。Apple 实施的 OpenGL ES 标准,与设备硬件紧密协作,为全屏幕游戏类应用程序提供很高的帧速率。使用 OpenGL ES:
创建 2D 和 3D 图形
***更复杂的图形,如数据可视化、飞行模拟或视频游戏。
访问底层图形硬件
详细信息请参考苹果开发者文档: https://developer.apple.com/library/ios/#documentation/Cocoa/Conceptual/CocoaFundamentals/WhatIsCocoa/WhatIsCocoa.html#//apple_ref/doc/uid/TP40002974-CH3-SW16
相关文章推荐
- 【iOS知识学习】_iOS FrameWork相关知识
- 【iOS知识学习】_iPhone判定金额小数点相关代码
- iOS知识学习的相关链接
- Vue.js学习系列三——axios和网络传输相关知识的学习实践
- IOS开发学习记录----计算机相关知识
- Vue.js学习系列三——axios和网络传输相关知识的学习实践
- VOLTE学习笔记(二)——IMS相关标识及SIP知识
- iOS socket 使用 相关知识
- 学习Ruby你需要了解的相关知识(rvm, gem, bundle, rake, rails等)
- PE结构、SEH相关知识学习笔记
- 黑马程序员--IOS入学学习--6-OC基础知识
- dll 学习相关知识总结
- iOS学习笔记-135.RunLoop03——Runloop相关类1_基础
- PHPWeb开发相关知识学习记录
- esxi + nvidia 的相关知识学习 (持续更新)
- Ios中关于IB简介、视图、以及设计模式相关知识
- IOS学习之——UItouch的相关使用
- python知识学习相关链接
- IOS学习收集的相关网站
- iOS蓝牙开发(一)蓝牙相关基础知识