1.iOS基于UNIX系統(tǒng)抑月,因此從系統(tǒng)的穩(wěn)定性上來說它要比其他操作系統(tǒng)的產(chǎn)品好很多
2.iOS的系統(tǒng)架構(gòu)分為四層拔疚,由上到下一次為:可觸摸層(Cocoa Touch layer)对雪、媒體層(Media layer)缆巧、核心服務(wù)層(Core Services layer)司抱、核心操作系統(tǒng)層(Core OS layer)如圖:
(1)觸摸層:為應(yīng)用程序開發(fā)提供了各種常用的框架并且大部分框架與界面有關(guān)绪励,本質(zhì)上來說它負(fù)責(zé)用戶在iOS設(shè)備上的觸摸交互操作蓉坎。它包括以下這些組件:
Multi-Touch Events ?Core Motion ? Camera
View Hierarchy ? Localization ? Alerts
Web Views ? ? Image Picker ? Multi-Touch Controls
(2)媒體層:通過它我們可以在應(yīng)用程序中使用各種媒體文件澳眷,進(jìn)行音頻與視頻的錄制,圖形的繪制蛉艾,以及制作基礎(chǔ)的動畫效果钳踊。它包括以下這些組件:
Core Audio ? ? OpenGL ? ?Audio Mixing
Audio Recording ? Video Playback ? JPG衷敌,PNG,TIFF
PDF ? ? Quartz ? ?Core Animation
OpenGL ES
(3)核心服務(wù)層:我們可以通過它來訪問iOS的一些服務(wù)拓瞪。它包括以下這些組件:
Collections ? ? Address Book ? Networking
File Access ? ? SQLite ? ?Core Location
Net Services ? ?Threading ? ?Preferences
URL Utilities
(4)核心操作系統(tǒng)層包括:內(nèi)存管理缴罗、文件系統(tǒng)、電源管理以及一些其他的操作系統(tǒng)任務(wù)祭埂。它可以直接和硬件設(shè)備進(jìn)行交互面氓。核心操作系統(tǒng)層包括以下這些組件:
OS X Kernel ? ?Mach 3.0 ? ?BSD
Sockets ? ? Power Mgmt ?File System
Keychain ? ? Certificates ? Security
Bonjour
3.Cocoa Touch簡介
(1)在最上層Cocoa Touch層中的很多技術(shù)都是基于Objective-C語言的。Objective-C語言為iOS提供了集合蛆橡、文件管理舌界、網(wǎng)絡(luò)操作等支持。比如UIKit框架泰演,它為應(yīng)用程序提供了各種可視化組件禀横,比如像窗口(Window)、視圖(View)和按鈕組件(UIButton)粥血。Cocoa Touch層中的其他框架柏锄,對我們在應(yīng)用程序中的開發(fā)來說也是非常有用的,如訪問用戶通信錄功能框架复亏、獲取照片信息功能的框架趾娃、負(fù)責(zé)加速感應(yīng)器和三維陀螺儀等硬件支持的框架。
4.應(yīng)用程序的框架
應(yīng)用程序項目都是從Cocoa Touch層開始的缔御,具體來說就是從UIKit Framework開始的抬闷。當(dāng)在編寫程序的過程中需要用到一些特殊功能的時候,我們應(yīng)該從框架的最頂端技術(shù)開始尋找相應(yīng)的框架耕突,只有在上層結(jié)構(gòu)無法解決時笤成,才能使用其下層的技術(shù)。其實眷茁,頂層的框架已經(jīng)涵蓋了我們絕大多數(shù)需要的功能炕泳。
常用的iOS SDK框架:
續(xù)表: