2012-04-27 59 views
1

到目前爲止,很明顯UIKit已經在Core Graphics和Core Animation之上,以及Core Graphics和Core Animation能夠做什麼,UIKit也有一些更高層次的方法來完成它們。如何與UIKit,Core Image,Quartz 2D以及iOS中的各種框架相關聯?

其他圖層,核心圖像,Quartz 2D,Quartz,Quartz Core,Quartz Graphics,Core Video,Cocoa Touch,Core Motion如何?它們如何相互關聯? (是否有一個很好的圖表,描繪了它們在iOS中屬於的位置?)

回答

3

Quartz = Quartz 2D = Core Graphics。從程序員的角度來看,這些對於同一事物來說只是不同的名稱。蘋果稱其圖形引擎Quartz(2D),它是Core Graphics框架的一部分。如果你想在代碼中使用Quartz(2D),你可以使用Core Graphics框架中定義的API。 Quartz Graphics:我從來沒有聽說過這個,但它可能只是Quartz/Core Graphics的另一個名字。

核心圖像是另一個框架(首次出現在Mac上,最近在iOS上),其主要焦點是圖像處理。 Core Image允許您在圖像上應用一組預定義或自定義圖形過濾器。核心圖像是非常快的,因爲它非常有效地使用GPU來應用這些濾鏡。最近,Core Image還有另一個特點:圖像中的人臉檢測。

(我不知道太多關於核心顯卡,所以我會很感激,如果其他人可以添加更多的關於該主題。)

+0

似乎Core Graphics == Quartz 2D和Core Animation是Quartz Core的一部分。但是由於Quartz Core == Core Animation + Core Image + Core Video在Mac OS X上,但在iOS上,Core Image和Core Video不是Quartz Core的一部分,所以Core Animation == Quartz Core on iOS – 2012-04-30 01:23:14

0

由於Begemann的答案。我發現http://developer.apple.com/library/ios/#documentation/Cocoa/Conceptual/CocoaFundamentals/WhatIsCocoa/WhatIsCocoa.html#//apple_ref/doc/uid/TP40002974-CH3-SW16

更多信息雖然它可能不完整,這裏是一個概述:


在Mac OS X:

enter image description here


在iOS:

enter image description here

摘錄:

下面總結一些在 每一層發現了iOS棧,從基礎層開始框架。

核心操作系統。該級別包含內核,文件系統,網絡連接,基礎架構,安全性,電源管理以及一些設備驅動程序。它還具有libSystem庫,該庫支持POSIX/BSD 4.4/C99 API規範,並且包含許多服務的系統級API 。

核心服務。這一層的框架提供了 核心服務,如字符串操作,集合管理,網絡連接,URL實用程序,聯繫人管理和首選項。它們還提供基於設備的硬件特徵的服務,諸如GPS,指南針,加速度計和陀螺儀。此層中的框架 的示例是Core Location,Core Motion和System 配置。

該圖層包含基礎和核心 基礎結構,提供對常見數據類型 (如字符串和集合)的抽象。核心框架層也包含核心數據,用於對象圖管理和對象持久性的框架。

媒體。該層中的框架和服務取決於Core服務層,並向Cocoa Touch層提供圖形和多媒體服務。它們包括Core Graphics,Core Text,OpenGL ES, 核心動畫,AVFoundation,Core Audio和視頻播放。

Cocoa Touch。該層中的框架直接支持基於iOS的應用程序 。它們包括框架,如遊戲工具包,地圖工具包和 iAd。

Cocoa Touch層和Core Services層每個都有一個 Objective-C框架,這對於爲iOS開發 應用程序特別重要。這些是iOS中的核心Cocoa框架:

UIKit。該框架提供應用程序在其用戶界面中顯示的對象,並定義應用程序行爲結構,包括事件處理和繪圖。有關UIKit的說明,請參閱 「UIKit(iOS)」。

基金會。該框架定義了對象的基本行爲 ,爲其管理建立了機制,併爲基本數據類型,集合和操作系統 服務提供了 對象。基礎本質上是 核心基礎框架的面向對象版本;有關 Foundation框架的討論,請參閱「基礎」部分。