相同之處:兩者都包含OC運行時的兩個核心框架:
Cocoa包含F(xiàn)oundation和AppKit框架牲迫,可用于開發(fā)Mac OS X系統(tǒng)的應用程序
Cocoa Touch包含F(xiàn)oundation和UIKit框架垒玲,可用于開發(fā)iOS 系統(tǒng)的應用程序
Cocoa是Mac OS X的開發(fā)環(huán)境怠堪,Cocoa Touch是 iOS的開發(fā)環(huán)境
框架:
Foundation框架實現(xiàn)了NSObject類(即根類)对供,這個類定義基本對象行為吭从,此外便脊,該框架還實現(xiàn)了用于表示基本類型(例如周荐,字符串和數(shù)字)和群體類型(例如數(shù)組和字典)的類,同時也提供一些基本工具饲宛,例如用于國際化,對象持久化嗜价,文件管理以及XML文件處理的工具艇抠。您還可以使用Foundation框架中的類訪問地層系統(tǒng)的實體和服務,例如可以用它來訪問端口久锥、線程家淤、鎖和進程。Foundation框架以Core Foundation框架為基礎瑟由。Core Foundation框架提供的是過程花(ANSI C)接口絮重。
AppKit和UIKit可以被用來開發(fā)應用程序的接口。二者用途相同歹苦,只是平臺不同青伤。
框架中的類很多,各種不同用途:有的用于事件處理殴瘦,有的用于畫圖狠角,有的用于圖像處理,有的用于文本處理蚪腋,有的用于用戶排版丰歌,還有用于應用程序之間的數(shù)據(jù)傳輸。
框架中還包含表視圖屉凯、滑動條立帖、按鍵、文本字段以及警告對話框等用戶的接口元素
Cocoa經(jīng)常被用于泛指所有基于Objective-C運行時且派生自根類(NSObject)的類或?qū)ο?/p>
編程語言:
Objective-C是開發(fā)Cocoa和Cocoa Touch應用程序的本地語言悠砚。但是Cocoa和Cocoa TOuch應用程序也可以包含C++和ANSI C代碼晓勇,另外也可以使用橋接(_bridge)Objective-C運行時的腳本語言,例如PyObjC和RubyCoco——開發(fā)Cocoa應用程序。