框架:是一个目录,这个目录包含了共享库,访问共享库里代码的头文件,和其他的图片和声音的资源文件。一个共享库定义的方法或函数可以被应用程序调用。

每个框架对于 iOS 系统里的一层,每层建立在它下面层的上面。应该尽量使用上层的框架来代替下面的框架。更高层次的框架是对底层框架基于对象的抽象

Coaoa Touch layer : UIKit

Media layer : Core Graphics、Open GL ES、Core Animation

Core Services layer : Core Data、Foundation

Core OS layer

iOS 开发主要使用框架就是 Foundation 和 UIKit 框架

Foundation 框架为所有的应用程序提供最基本系统服务

  一个应用程序,UIKit 和其他的框架都是建立在 Foundation 框架上面的。Foundation框架是用 Objective-C 对Core Foundation 的框架里许多特性的封装

Foundation 功能:

  创建和管理集合,比如字典和数组

  访问存储在应用程序里的图片和其他资源

  创建和管理字符串

  提交和接收通知

  创建日期和时间对象

  自动发现IP网络上的设备

  操作URL流

  执行异步代码

UIKit 框架提供创建基于用户界面的类

  所有的iOS应用程序都基于 UIKit,你不能使应用程序脱离这个框架,UIKit提供了在屏幕上绘制的机制,捕获事件,和创建通用用户界面元素。UIKit也通过管理显示在屏幕上的组件来组织复杂的项目。

UIKit 框架功能

  构建和管理你的用户界面

  捕获触摸和基于移动的事件

  呈现文字和web内容

  优化你的多任务程序

  创建定制的用户界面元素

其他的重要框架

Core Data 框架管理着应用程序数据模型

Core Data提供对象的管理,使用Core Data,你可以创建模型对象,并管理这些对象。你管理这这些对象间的联系并修改数据。Core Data提供的内建SQLlite技术可以高效的管理数据。

Core Data 框架功能:

  在库里存储和接收对象

  提供基本的undo/redo

  自动验证属性值

  过滤、分组和优化内存中的数据

  用[NSFetchedResultsController]管理表视图中的结果

  支持基于文档的应用程序

Core Grapics框架帮组你创建图形

高质量的图形对于所有的iOS应用程序都是很重要的。在iOS中最简单且最快捷的创建图形的方式是使用UIKit框架提供的基于预渲染图形的视图和控件,然后让UIKit和iOS完成绘制。但是当你需要创建复杂的图形时,Core Graphics则提供了更底层的库来帮助你。

Core Graphics框架功能:

  创建基于路径的绘图

  抗锯齿渲染

  添加梯度、图片和颜色

  Use coordinate-space transformations.

  创建、显示和分析PDF文档

Core Animation 允许你创建高级的动画和虚拟效果

UIKit提供建立在Core Animation之上的动画。如果你需要比UIKit能力更高级的功能,可以直接使用Core Animation。Core Animation接口包含在Quartz Core框架里。使用Core Animation可以创建嵌套的对象,并且可以对它们操作、旋转、缩放和转换。使用Core animation,你可以创建动态的用户界面而不用使用更底层的图形API,如OpenGL ES。

Core Animation框架功能:

  创建定制动画

  添加定时函数和图形

  支持帧动画

  Specify graphical layout constraints.

  Group multiple-layer changes into anatomic update.

OpenGL ES 框架提供 2D 和 3D 绘图工具

OpenGL ES支持2D和3D绘图,Apple的OpenGL ES实现通过硬件提供了高速的全屏游戏式的应用程序。

OpenGL ES框架功能:

  创建2D和3D图形

  创建更复杂的图形,比如数据虚拟化、模拟飞行,或者视频游戏

  访问底层图形设备

iOS 的主要框架的更多相关文章

  1. [转载]iOS 10 UserNotifications 框架解析

    活久见的重构 - iOS 10 UserNotifications 框架解析 TL;DR iOS 10 中以前杂乱的和通知相关的 API 都被统一了,现在开发者可以使用独立的 UserNotifica ...

  2. 关于第三方IOS的checkBox框架的使用

    *:first-child { margin-top: 0 !important; } body > *:last-child { margin-bottom: 0 !important; } ...

  3. 漫谈iOS Crash收集框架

    漫谈iOS Crash收集框架   Crash日志收集 为了能够第一时间发现程序问题,应用程序需要实现自己的崩溃日志收集服务,成熟的开源项目很多,如 KSCrash,plcrashreporter,C ...

  4. 手把手教你如何搭建iOS项目基本框架

    手把手教你如何搭建iOS项目基本框架 今天我们来谈谈如何搭建框架,框架需要做一些什么. 第一步:找到我们的目标我们的目标是让其他开发人员拿到手后即可写页面,不再需要考虑其他的问题. 第二步:我们需要做 ...

  5. ios开发——实用技术篇OC篇&iOS的主要框架

    iOS的主要框架         阅读目录 Foundation框架为所有的应用程序提供基本系统服务 UIKit框架提供创建基于触摸用户界面的类 Core Data框架管着理应用程序数据模型 Core ...

  6. [iOS]数据库第三方框架FMDB详细讲解

    [iOS]数据库第三方框架FMDB详细讲解 初识FMDB iOS中原生的SQLite API在进行数据存储的时候,需要使用C语言中的函数,操作比较麻烦.于是,就出现了一系列将SQLite API进行封 ...

  7. IOS 与ANDROID框架及应用开发模式对照一

    IOS 和ANDROID操作系统都是眼下流行的移动操作系统,被移动终端和智能设备大量採用,两者都採用了先进的软件技术进行设计,为了方便应用开发两者都採用了先进的设计模式. 两者在框架设计上都採用了什么 ...

  8. <iOS 组件与框架> -- UIKit Dynamics

    UIKit Dynamics 结合 『iOS 组件与框架 』一书.总结的知识点与demo demo 地址: GitHub地址 一.概述 1.UIKit Dynamics 是 iOS 7 新增的内容.其 ...

  9. IOS 与ANDROID框架及应用开发模式对比一

    IOS 和ANDROID操作系统都是目前流行的移动操作系统,被移动终端和智能设备大量采用,两者都采用了先进的软件技术进行设计,为了方便应用开发两者都采用了先进的设计模式.两者在框架设计上都采用了什么技 ...

  10. 实用的IOS应用程序框架

    实用的IOS应用程序框架 目录 概述 概述

随机推荐

  1. 《JavaScript高级程序设计》读书笔记--(2)基本概念

    变量 Javascript 是区分大小写的, 也就是说 var nun 与 var Num 是不同的变量. ECMAScript的变量是松散类型的,所谓松散类型就是可以保存任何类型的数据.ECMASc ...

  2. GDB中汇编调试

    GDB中汇编调试 1.输入代码 2.使用gcc - g example.c -o example -m32指令在64位的机器上产生32位汇编,时遇到问题使用-m32指令报错,参考卢肖明同学博客知道这是 ...

  3. onBackPressed

    onBackPressed()此为进行返回当前的activity 看源码

  4. android 指示器 tablatyout

    <android.support.design.widget.TabLayout/>android 材料设计中新出的控件 package com.weavey.loadinglayout; ...

  5. 2.4G/5G频段WLAN的模式、带宽、协商速率

    2.4G频段 5G频段

  6. 网易云课堂JS笔记

    JS能做什么?? ----网易官网:选项卡----京东: Hbuilder编辑器介绍 JavaScript简介 ECMAScript:javaScript组成语法和基本对象 DOM:文档对象模型,描述 ...

  7. web开发中常用的技术体系

    HTML html(HyperText  Markup  Language)超文本标记语言"超文本"就是指页面内可以包含图片.链接.程序等非文字元素. 超文本标记语言的结构包括&q ...

  8. Exploratory Undersampling for Class-Imbalance Learning

    Abstract - Undersampling is a popular method in dealing with class-imbalance problems, which uses on ...

  9. oracle 11g dmp文件导入10g

    需要导表的时候死活进不去, 现在没需求了.试了一把,一点问题都没.无语.下次遇到问题解决下吧. 导入导出命令:imp abc/abc123@ORCL file='d:\脚本\new\t_adverti ...

  10. php 画图片3

    <?php // 中文验证码 // 1. 创建画布 $im = imagecreatetruecolor(200, 200); // 2. 创建背景色 // 2.1得到背景颜色 $bg_colo ...