Mac os x以前有classic macos macos
carbon api和老的toolbox有不少重疊部分,對有些程序,從toolbox切換到carbon只需從新編譯便可,大部分程序也只須要很小的修改。這個過程叫碳化 api
OS X10.6的一大改進就是基於cocoa重寫的finder取代了原有基於carbon的finder。 app
cocoa是開發者使用的最高層的api。它提供了兩個不一樣層次的框架:foundation和appkit。 框架
foundation框架功能最強的一個部分是分佈式對象框架。最重要的部分就是內存管理的代碼。 分佈式
appkit包含了圖形界面相關的代碼。是基於foundation的擴展或包裝。 函數
每個object-c對象都是一個結構體,第一個元素是指向累的指針。這個指針用語幫助消息發送函數尋找要調用的正確方法。 編碼
在core foundation中類只是一個抽象概念,在運行期間不存在。全部的行爲都是固定的編碼。 unix
osx系統時分層構建的,每層都構建在另一層之上。它的核心是xnu內核,提供了一個功能完整的unix03規範系統。 指針