很多初学者对于API这个词不太理解,在这里解释一下.
应用程序编程接口,简称API(Application Programming Interface),就是软件系统不同组成部分衔接的约定。
随着软件规模的日益庞大,我们需要把复杂系统划分成小的组成部分,编程接口的设计十分重要。
程序设计的实践中,编程接口的设计首先要使系统的职责得到合理划分。
良好的接口设计可以降低系统各部分的相互依赖,提高组成单元的内聚性,降低组成单元间的耦合程度,
从而提高系统的维护性和扩展性。
API之主要目的是提供应用程序与开发人员以访问一组例程的能力,而又无需访问源码,或理解内部工作机制的细节。
提供API所定义的功能的软件称作此API的实现。
API是一种接口,故而是一种抽象。
A reference implementation of an API is the implementation created by the designer of the API,
or one which other implementations of the API are expected to be compared against.
例如,图形库中的一组API定义调用绘制图标函数的方式,以于屏幕上显示图标。
程序中调用,编译时连接到这组API,执行时便调用API的实现(库)来显示图标。
操作系统的API可用来分配内存或访问文件。
许多系统与应用程序提供API接口与实现,比如图形系统,数据库,网络,Web服务,甚至于某些游戏。
一组API经常是一套软件开发工具包(SDK)的一部分。
SDK亦可包含其它工具亦或至于硬件,两个术语并不完全等同。
API有诸多不同设计。
用于快速执行的接口通常包括函数,常量,变量与数据结构。
也有其它方式,如通过解释器,或是提供抽象层以遮蔽同API实现相关的信息,确保使用API的代码无需更改而适应实现变化。
[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)