相同之处:两者都包含OC运行时的两个核心框架:
cocoa包含Foundation和AppKit框架,可用于开发Mac OS X系统的应用程序
cocoa touch包含Foundation和UIKit框架,可用于开发iPhone OS 系统的应用程序
Cocoa时Mac OS X的开发环境,cocoa Touch是 Iphone OS的开发环境
框架:
Foundation框架实现了NSObject类(即根类),这个类定义基本对象行为,此外,该框架还实现了用于表示基本类型(例如,字符串和数字)和群体类型(例如数组和字典)的类,同时也提供一些基本工具,例如用于国际化,对象持久化,文件管理以及XML文件处理的工具。您还可以使用Foundation框架中的类访问地层系统的实体和服务,例如可以用它来访问端口、线程、锁和进程。Foundation框架以Core Foundation框架为基础。Core Foundation框架提供的是过程花(ANSI C)接口。
AppKit和UIKit可以被用来开发应用程序的接口。二者用途相同,只是平台不同
框架中的类很多,各种不同用途:有的用于事件处理,有的用于画图,有的用于图像处理,有的用于文本处理,有的用于用户排版,还有用于应用程序之间的数据传输。
框架中还包含表视图、滑动条、按键、文本字段以及警告对话框等用户的接口元素
Cocoa经常被用于泛指所有基于Objective-C运行时且派生自根类(NSObject)的类或对象
编程语言:
Objective-c时开发Cocoa和Cocoa Touch应用程序的本地语言。但是Cocoa和Cocoa TOuch应用程序也可以包含C++和ANSI C代码,另外您也可以使用桥接(_bridge)Objective-C运行时的脚本语言,例如PyObjC和RubyCoco——开发Cocoa应用程序。