iOS開發(fā)庫 族譜介紹
iOS開發(fā)庫 族譜介紹是本文要介紹對內(nèi)容,本文讓我們在學(xué)習(xí)過程中清晰了很多盤,我們先來看內(nèi)容。
Foundation/Core Foundation/Carbon/Cocoa/Cocoa Touch/Toll Free Bridging光看看這tm些名字就jb夠暈了,你是不是也看著這些東西惡心?你是不是也發(fā)現(xiàn)在你開發(fā)同樣一個功能的時候,從a庫也可以到達,從b庫也可以到達?雖然都能抓住老鼠,可是到底哪只貓是串兒?哪只貓是純種的波斯貓?
本文就是對這些庫族譜的介紹。
Foundation:Objective-C的核心庫。寫個Objective-C程序必須包含的庫。提供了Objective-C中基本的數(shù)據(jù)類型和服務(wù)。他其實是和Cocoa更加親密的,按照層次應(yīng)該和Cocoa是一層。
Core Foundation: 一個接近系統(tǒng)的C庫,讓調(diào)用方可以方便的訪問系統(tǒng)級的內(nèi)容。Foundation和Cocoa有其部分功能的封裝,這就是為什么完成同一件事有多種解決方案的起源。個人感覺這個比Foundation功能更強大,畢竟更貼近底層自然效率會高一些吧。而且后面會提到,F(xiàn)oundation為了更好的調(diào)用Core Foundation,還得和Toll Free Bridging交互。
Carbon:這個跟iOS關(guān)系不大,在早期的Mac OS(X之前)必須用這個,提供了一些圖形庫和很多框架。
Cocoa:這個是現(xiàn)在Mac OS X中才出現(xiàn)的新玩意, 和Carbon一塊在Mac OS X上出現(xiàn)。
Cocoa Touch:是Cocoa在iOS上對應(yīng)的庫,做了很多在移動平臺上的優(yōu)化,比如把GC優(yōu)化沒了,因為高效的GC是不符合移動平臺的風(fēng)格的(因為用的是標(biāo)記法,所以產(chǎn)生的內(nèi)存碎片無法應(yīng)對所有移動開發(fā)情況)。
Toll Free Bridging:從名字可以看出是啥東西Bridge嘛,給Foundation和Core Foundation中間架個橋,以便調(diào)用。
附上個圖以便理解:
以上有道聽途說,有個人理解。歡迎大家指正。
小結(jié):iOS開發(fā)庫 族譜介紹的內(nèi)容介紹完了,希望本文對你有所幫助!