Cocoa
我们首先说一下为什么新建一个类的时候我们都是选择Cocoa Class呢?什么是Cocoa?
Cocoa不是一种编程语言(它可以运行多种编程语言),它也不是一个开发工具(通过命令行我们仍然可以开发Cocoa程序),它是创建Mac OS X和IOS程序的原生面向对象API,为这两者应用提供了编程环境。
我们通常称为“Cocoa框架”,事实上Cocoa本身是一个框架的集合,它包含了众多子框架,其中最重要的要数“Foundation”和“UIKit”。前者是框架的基础,和界面无关,其中包含了大量常用的API;后者是基础的UI类库,以后我们在IOS开发中会经常用到。这两个框架在系统中的位置如下图
Foundation框架
其实所有的Mac OS X和IOS程序都是由大量的对象构成,而这些对象的根对象都是NSObject,NSObject就处在Foundation框架之中,具体的类结构如下:
通常我们会将他们分为几类:
- 值对象
- 集合
- 操作系统服务:文件系统、URL、进程通讯
- 通知
- 归档和序列化
- 表达式和条件判断
- Objective-C语言服务
UIKit 框架
UIKit框架提供一系列的Class(类)来建立和管理iPhone OS应用程序的用户界面接口、应用程序对象、事件控制、绘图模型、窗口、视图和用于控制触摸屏等的接口。
当引入此头文件后,便可以在程序里使用任何在UIKit里声明的类
UIKit主要用于界面构架,这里我们不妨也看一下它的类结构:
加入我们需要使用Label(标签),它就属于一个事件控件的类。图表中列出了在UIKit框架中的Class(类)列表,在列表中可以看到它的位置:NSObject→UIResponder→UIView→UILabel