购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

3.1 框架的使用

我们知道了框架是通过编程语言来调用其相关功能的,那么到底是如何调用的?这就涉及一个新的概念——API(Application Programming Interface),下面会介绍什么是API,以及API与编程语言间的关系。

3.1.1 关于API

在所有的框架中,都拥有调用各种功能用的“窗口”。应用程序就是通过这个“窗口”来操作框架的,这个“窗口”就被称为API,即应用程序编程接口。应用程序与框架,以及API间的关系如图3-1所示。

图3-1 应用程序、框架、API三者间的关系

这也意味着学习框架的用法,就是学习API的用法。框架的使用方便与否,就取决于API的优劣。

我们可以通过了解Cocoa的API,来直观地理解API到底是什么。在Cocoa的API中有负责控制窗口的API,这个API定义在路径为【/系统/资源库/Frameworks/AppKit.framework/Headers/NSWindow.h】的文件中。下面的代码是该文件中的一部分。

这些就是API的接口函数的定义。相信读者初看上面的代码肯定是一头雾水。一般API都由特定的编程语言编写的,Cocoa框架的API就是由Objective-C语言来编写,如果你不懂Objective-C,当然会一头雾水。因此要学会使用Cocoa框架的API,就必须有Objective-C的基础。

3.1.2 API与编程语言的关系

我们知道,框架的API都是以特定编程语言的方式提供的,要使用框架,就必须学习API中使用的语言。Mac OS X的框架包括其API基本上是使用C语言或者Objective-C(有很小部分使用Java或C++)。如果你有C语言以及Objective-C语言的知识,就能使用绝大多数框架了。

但是,如果说框架已经决定了使用哪种的编程语言,有人会不满意了,认为还是使用自己熟悉的编程语言比较方便,那么就必须将开发将框架的API转换为其他语言的程序,称为桥(bridge)或封装(wrapper)。实际上在Cocoa框架中就有封装,这样除Objective-C以外的编程语言也能够调用Cocoa了,详细请见3.3节的相关介绍。 U/U8QVwJBiYZDgtH5cSWYqtJqevAR9U/cwenxaWMTbDVx3d1RW5P/4OKbKu5tmVN

点击中间区域
呼出菜单
上一章
目录
下一章
×