我正在写一些教学材料,当我开始解释API是什么时,我意识到我不知道为什么我们说“应用程序编程接口”,而不仅仅是“编程接口”。有人知道这段历史吗?
发布于 2017-09-13 14:33:30
之所以如此,是因为API通常不是通用的机器代码类型接口,而是执行特定功能(即特定应用程序)的软件模块的接口。
用于执行图像处理、压缩文件、安排牙医约会、自动调整签字人的库都是为解决特定问题提供软件应用程序的模块。进入自动调优的许多API选项与调度牙医约会的API选项不同,数据结构和操作过程也不同。
如果你刚才说的是“编程接口”,我和我想很多人都会想到一个非常低级的功能,比如将可执行代码从磁盘加载到内存中,将代码加载到闪存芯片,等等。
“编程接口”将是编译器编写人员和芯片设计人员所关注的问题,而“应用程序编程接口”则是更高层次的抽象。
发布于 2017-09-13 14:34:52
发布于 2017-09-13 14:35:00
有时会区分应用软件和系统软件。应用软件是用来解决特定问题或与用户交互的软件。相比之下,系统软件为其他软件提供服务。操作系统和软件库是系统软件的例子。
应用程序接口是系统软件公开的接口,通过该接口为应用软件提供服务。
如今,应用程序和系统软件之间的区别几乎是毫无用处和不明确的。许多程序既像应用程序,也像平台(例如,web浏览器不仅为web提供用户界面,而且还为web应用程序提供运行时环境)。此外,类似系统的软件的多层通常是层次分明的,它们还必须通过某些接口进行通信。
因此,“应用程序编程接口”一词实际上是指任何软件-软件接口。
https://softwareengineering.stackexchange.com/questions/357306
复制相似问题