Mac OS X - Cocoa

为 Mac OS X 和 iOS 提供了强大支持的 Cocoa 和 Cocoa Touch 框架都已经紧密集成到 Xcode 中。使用 Cocoa 的高层 API,您只需要编写几行代码,就可以很容易地向程序中添加动画效果,网络功能以及和操作系统一致的外观和行为。

Cocoa Frameworks

Cocoa 框架

Cocoa 框架包括一系列库,API 和运行时系统,这些组成了所有 Mac OS X 的开发层。使用 Cocoa 进行开发,您可以用和创建 Mac OS X 系统一样的方式来创建您自己的应用程序。您的应用程序将自动继承 Mac OS X 良好的行为和外观,并且能够充分发掘 UNIX 操作系统的潜能。通过 Xcode IDE 使用 Cocoa 是创建本地 Mac 应用程序的最好方法。

Objective-C 的强大功能

Cocoa 的大部分都是用 Objective-C 实现的。Objective-C 是一种面向对象语言,它编译运行的速度令人咋舌,而且 Cocoa 采用了真正的动态运行时系统,这又为它增添了难能可贵的灵活性。由于 Objective-C 是 C 的一个超集,因此可以很容易地将 C 甚至 C++ 代码添加到您的 Cocoa 应用程序中。

当您的应用程序运行时,Objective-C 运行时系统按照执行逻辑对对象进行实例化——而且不仅仅是按照编译时的定义。例如,一个运行中的 Objective-C 应用程序能够加载一个界面(一个由 Interface Builder 创建的 nib 文件),将界面中的Cocoa对象连接至您的程序代码,然后,一旦UI中的某个按钮被按下,程序便能够执行对应的方法。上述过程无需重新编译。

Objective-C 的动态运行时系统类似于许多现在的脚本语言,这使您可以很容易地采用 Cocoa Bridge 将 Cocoa 的功能映射到其它语言。通过 Cocoa Bridge,开发人员可以使用 AppleScript,Ruby 和 Python 创建一流的 Mac OS X 应用程序。

Cocoa 采用“模型-视图-控制器”设计模式

Model - View - Controller

贯穿于 Cocoa 的灵魂是“模型-视图-控制器”(MVC)设计模式。“模型”封装应用程序的数据,“视图”显示和编辑数据,“控制器”处理前两者之间的逻辑关系。这种分工负责的方式使得程序易于设计,实现和维护。

采用 MVC 设计模式意味着,Interface Builder 不需要编写或生成任何代码,您只需专注于应用程序的视图。Mac 的 Cocoa 绑定消除了大部分的黏合代码,它就像连接在 Xcode 编写的控制器和 Interface Builder 设计的视图之间的一条线,用图形化的表示方法简化了二者之间的关系。Interface Builder 和 Cocoa 可以轻而易举地将您的应用程序本地化,所以您可以很快打入全新的市场。

功能列表:框架分类

Cocoa 包括为所有的 Mac 应用程序提供公共构建模块的基本框架,例如 AppKit 和 Core Foundation;也包括针对从网络、数据到图形、专业音频处理等工作的专有框架。这些框架上到能以寥寥数行代码创造惊人特效的高级 Objective-C API,下至处理核心系统各个方面的底层框架。下面列出了目前 Cocoa 提供的众多框架中的一小部分:

  • 音频和视频

  • Core Audio
  • Core MIDI
  • Core Video
  • 数据管理

  • Core Data
  • 网络和互联网

  • Bonjour
  • 目录服务(Directory Services)
  • Kerberos
  • 图形和动画

  • Core Animation
  • Core Image
  • OpenGL
  • Quartz
  • QuickTime
  • QTKit
  • 针对脚本语言的 Cocoa Bridges

  • AppleScript
  • Python
  • Ruby
  • 用户应用程序

  • 地址簿(Address Book)
  • 日历仓库(Calendar Store)
  • 即时消息(Instant Message)