Cocoa-Cocoa框架

一、Cocoa是什麼?

Cocoa是OS X和 iOS操做系統的程序的運行環境。編程

是什麼因素使一個程序成爲Cocoa程序呢?不是編程語言,由於在Cocoa開發中你可使用各類語言;也不是開發工具,你能夠在命令行上就能夠建立Cocoa程序。Cocoa程序能夠這麼說,它是由一些對象組成,而這些對象的類最後都是繼承於它們的根類 :NSObject。並且它們都是基於Objective-C運行環境的。服務器

1.一、Cocoa框架

iOS中,Cocoa衆多框架中最重要最基本的兩個框架是:Foundation 和 UIKit。多線程

Foundation 和界面無關,也能夠說和界面無關的類基本是Foundation框架的,和界面相關的是UIKit框架。架構

這兩個框架在系統中處於的位置如圖:框架

 

1.二、Foundation框架

好吧,那咱們看看兩個框架的類組織架構圖,第一個先看Foundation的,三個圖,包括了Foundation全部的類,圖中灰色的是iOS不支持的,灰色部分是OS X系統的。編程語言

  

將上圖Foundation框架中的類進行邏輯分類以下:工具

  1. 值對象開發工具

  2. 集合 ui

  3. 操做系統服務 包括下面三個:文件系統和URL   進程間通信。 這個範疇中的大部分類表明不一樣的系統端口、套接字、和名字服務器,對實現底層的IPC頗有用。NSPipe表明一個BSD管道,即一種進程間的單向通信通道。   線程和子任務。 NSThread類使您能夠建立多線程的程序,而各類鎖(lock)類則爲彼此競爭的線程在訪問進程資源時提供各類控制機制。經過NSTask,您的程序能夠分出      一個子進程來執行其它工做或進行進度監控。操作系統

  4. 通知

  5. 歸檔和序列化

  6. 表達式和條件判斷

  7. Objective-C語言服務

1.3 UIKit框架

應用程序能夠經過三種方式使用UIKit建立界面

  1.   在用戶界面工具(interface Buidler)從對象庫裏 拖拽窗口,視圖或者其餘的對象使用。

  2.   用代碼建立

  3.   經過繼承UIView類或間接繼承UIView類實現自定義用戶界面

框架類組織架構圖:

在圖中能夠看出,responder 類是圖中最大分支的根類,UIResponder爲處理響應事件和響應鏈 定義了界面和默認行爲。當用戶用手指滾動列表或者在虛擬鍵盤上輸入時,UIKit就生成時間傳送給UIResponder響應鏈,直到鏈中有對象處理這個事件。相應的核心對象,好比:UIApplication  ,UIWindow,UIView都直接或間接的從UIResponder繼承。

相關文章
相關標籤/搜索