Cocoa框架包含两个核心框架:Foundation和Application Kit (UIKit) 框架。
Application Kit:
![](http://hi.csdn.net/attachment/201201/4/0_1325658133q443.gif)
![](http://hi.csdn.net/attachment/201201/4/0_1325658149RYiR.gif)
![](http://hi.csdn.net/attachment/201201/4/0_13256581569YrL.gif)
在Cocoa开发中是必要的,至于其它框架(如:Core Data、Sync Services、Address Book、Preference Panes、Screen Saver、Web Kit)则是辅助和可选的;Foundation框架和Application Kit框架的区分标准在于用户界面。如果一个对象既不出现在用户界面上,也不是专门用于支持用户界面,那么它就属于Foundation框架,命令行工具和Internet服务器就是这样的例子。
Foundation类层次的根是NSObject类,它(和NSObject及NSCopying协议一起)定义了基本的对象属性和行为。
Foundation框架的剩余部分由几组相互关联的类和一些独立的类组成。有一些代表基本数据类型的类,如字符串、字节数组;用于存储其它对象的集合类;一些代表系统信息的类,如日期类;还有一些代表系统实体的类,比如端口、线程、和进程。
Application Kit (UIKit) 框架包含实现图形的、事件驱动的用户界面需要的所有对象:窗口、对话框、按键、菜单、滚动条、文本输入框—这个列表还在不断增加。Application Kit由超过125个类和协议组成。所有的类最终都从Foundation框架的NSObject类继承而来, Application Kit帮助您处理所有的细节,它可以高效地进行屏幕描画、和营建设备及屏幕缓冲区进行通讯,在描画之前清除屏幕上的区域,以及对视图进行裁剪。
iPhone按照视图加入的先后顺序,由后向前显示,这说明了视图层次是一种空间上的叠加关系。
Foundation:
![Cocoa框架类之间的继承关系 - hager - hager的博客](http://img694.ph.126.net/o2Y1va8UStEH0Rp-W4OnLQ==/2863444938078697624.png)
![Cocoa框架类之间的继承关系 - hager - hager的博客](http://img237.ph.126.net/o17g3Ow_4mEjsQmboU76jw==/1758092704536232187.png)
![Cocoa框架类之间的继承关系 - hager - hager的博客](http://img.ph.126.net/YvOga_u3TnUXWDXgjBzR4g==/2374522903531439182.png)
![Cocoa框架类之间的继承关系 - hager - hager的博客](http://img848.ph.126.net/qK7VgKcxUVQ_2E3lHYnslQ==/2082914827660423145.png)
![Cocoa框架类之间的继承关系 - hager - hager的博客](http://img615.ph.126.net/QhwFi5FLVI8t64bF07RFaA==/1933170140050803500.png)
原址:http://heidianfeng.blog.163.com/blog/static/61843456201011111109291/
UIKit框架
![](http://hi.csdn.net/attachment/201201/4/0_1325658133q443.gif)
![](http://hi.csdn.net/attachment/201201/4/0_1325658149RYiR.gif)
![](http://hi.csdn.net/attachment/201201/4/0_13256581569YrL.gif)
原址
: