iOS應(yīng)用程序基礎(chǔ):Cocoa Touch框架
iOS 應(yīng)用程序的基礎(chǔ) Cocoa Touch 框架重用了許多 Mac 系統(tǒng)的成熟模式,但是它更多地專(zhuān)注于觸摸的接口和優(yōu)化。UIKit 為您提供了在 iOS 上實(shí)現(xiàn)圖形,事件驅(qū)動(dòng)程序的基本工具,其建立在和 Mac OS X 中一樣的 Foundation 框架上,包括文件處理,網(wǎng)絡(luò),字符串操作等。
Cocoa Touch 具有和 iPhone 用戶接口一致的特殊設(shè)計(jì)。有了 UIKit,您可以使用 iOS 上的獨(dú)特的圖形接口控件,按鈕,以及全屏視圖的功能,您還可以使用加速儀和多點(diǎn)觸摸手勢(shì)來(lái)控制您的應(yīng)用。
基于 Objective-C 語(yǔ)言實(shí)現(xiàn)
大部分 Cocoa Touch 的功能是用 Objective-C 實(shí)現(xiàn)的。Objective-C 是一種面向?qū)ο蟮恼Z(yǔ)言,它編譯運(yùn)行的速度令人難以置信。更值得一提的是采用了真正的動(dòng)態(tài)運(yùn)行時(shí)系統(tǒng),從而增添了難能可貴的靈活性。由于 Objective-C 是 C 的超集,因而可以很容易地將 C 甚至 C++ 代碼添加到您的 Cocoa Touch 程序里。
當(dāng)您的應(yīng)用程序運(yùn)行時(shí),Objective-C 運(yùn)行時(shí)系統(tǒng)按照?qǐng)?zhí)行邏輯對(duì)對(duì)象進(jìn)行實(shí)例化—而且不僅僅是按照編譯時(shí)的定義。例如,一個(gè)運(yùn)行中的 Objective-C 應(yīng)用程序能夠加載一個(gè)界面(一個(gè)由 Interface Builder 創(chuàng)建的 nib 文件),將界面中的 Cocoa 對(duì)象連接至您的程序代碼,然后,一旦UI中的某個(gè)按鈕被按下,程序便能夠執(zhí)行對(duì)應(yīng)的方法。上述過(guò)程無(wú)需重新編譯。
各色俱全的框架
除了 UIKit 外,Cocoa Touch 包含了創(chuàng)建世界一流 iOS 應(yīng)用程序需要的所有框架,從三維圖形,到專(zhuān)業(yè)音效,甚至提供設(shè)備訪問(wèn) API 以控制攝像頭,或通過(guò) GPS 獲知當(dāng)前位置。Cocoa Touch 既包含只需要幾行代碼就可以完成全部任務(wù)的強(qiáng)大的 Objective-C 框架,也在需要時(shí)提供基礎(chǔ)的 C 語(yǔ)言 API 來(lái)直接訪問(wèn)系統(tǒng)。這些框架包括:
Core Animation
通過(guò) Core Animation,您就可以通過(guò)一個(gè)基于組合獨(dú)立圖層的簡(jiǎn)單的編程模型來(lái)創(chuàng)建豐富的用戶體驗(yàn)。
Core Audio
Core Audio 是播放,處理和錄制音頻的專(zhuān)業(yè)技術(shù),能夠輕松為您的應(yīng)用程序添加強(qiáng)大的音頻功能。
Core Data
提供了一個(gè)面向?qū)ο蟮臄?shù)據(jù)管理解決方案,它易于使用和理解,甚至可處理任何應(yīng)用或大或小的數(shù)據(jù)模型。
功能列表:框架分類(lèi)
下面是 Cocoa Touch 中一小部分可用的框架:
音頻和視頻
Core Audio
OpenAL
Media Library
AV Foundation
數(shù)據(jù)管理
Core Data
SQLite
圖形和動(dòng)畫(huà)
Core Animation
OpenGL ES
Quartz 2D
網(wǎng)絡(luò)
Bonjour
WebKit
BSD Sockets
用戶應(yīng)用
Address Book
Core Location
Map Kit
Store Kit