|
Foundation/Core Foundation/Carbon/Cocoa/Cocoa Touch/Toll Free Bridging光看看這tm些名字就jb夠暈了,你是不是也看著這些東西惡心?你是不是也發(fā)現(xiàn)在你開發(fā)同樣一個(gè)功能的時(shí)候,從a庫也可以到達(dá),從b庫也可以到達(dá)?雖然都能抓住老鼠,可是到底哪只貓是串兒?哪只貓是純種的波斯貓?
本文就是對(duì)這些庫族譜的介紹。
Foundation:Objective-C的核心庫。寫個(gè)Objective-C程序必須包含的庫。提供了Objective-C中基本的數(shù)據(jù)類型和服務(wù)。他其實(shí)是和Cocoa更加親密的,按照層次應(yīng)該和Cocoa是一層。
Core Foundation: 一個(gè)接近系統(tǒng)的C庫, 讓調(diào)用方可以方便的訪問系統(tǒng)級(jí)的內(nèi)容。Foundation和Cocoa有其部分功能的封裝,這就是為什么完成同一件事有多種解決方案的起源。個(gè)人感覺這個(gè)比Foundation功能更強(qiáng)大,畢竟更貼近底層自然效率會(huì)高一些吧。而且后面會(huì)提到,F(xiàn)oundation為了更好的調(diào)用Core Foundation,還得和Toll Free Bridging交互。
Carbon:這個(gè)跟ios關(guān)系不大,在早期的Mac OS(X之前)必須用這個(gè),提供了一些圖形庫和很多框架。
Cocoa:這個(gè)是現(xiàn)在Mac OS X中才出現(xiàn)的新玩意, 和Carbon一塊在Mac OS X上出現(xiàn)。
Cocoa Touch:是Cocoa在ios上對(duì)應(yīng)的庫,做了很多在移動(dòng)平臺(tái)上的優(yōu)化,比如把GC優(yōu)化沒了,因?yàn)楦咝У腉C是不符合移動(dòng)平臺(tái)的風(fēng)格的(因?yàn)橛玫氖菢?biāo)記法,所以產(chǎn)生的內(nèi)存碎片無法應(yīng)對(duì)所有移動(dòng)開發(fā)情況)。
Toll Free Bridging:從名字可以看出是啥東西Bridge嘛,給Foundation和Core Foundation中間架個(gè)橋,以便調(diào)用。
附上個(gè)圖以便理解:
以上有道聽途說,有個(gè)人理解。歡迎大家指正。
it知識(shí)庫:iOS開發(fā)庫的族譜介紹,轉(zhuǎn)載需保留來源!
鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。