sdk 相当于开发集成工具环境,api 就是数据接口。api 可以在 sdk 提供的“环境”里请求。同样的,这里的“环境”也是一个抽象的概念。如果不使用 sdk,也可以直接调用 api,只不过,这个环境就要由开发者自己实现了。
API
api 全称 application programming interface,即【应用程序接口】。
一般是指一些预先定义的函数,目的是供应用程序与开发人员基于某软件或硬件得以访问一组程序的能力,而又无需访问源码,或理解内部工作机制的细节。
SDK
SDK 就是 Software Development Kit 的缩写,中文意思就是【软件开发工具包】。
这是一个覆盖面相当广泛的名词,可以这么说:辅助开发某一类软件的相关文档、范例和工具的集合都可以叫做SDK。
区别
api 在更多场合下更像是 sdk 的一个子集,他们的区别如下:
api 通常是一个函数,有特定的功能;
而 sdk 是一个很多功能函数的集合体,更像是一个工具包。
api 通常扮演数据接口的形象,sdk 相当于一个工具环境,通常是需要在 sdk 的环境下调用 apl。•sdk 相较于 api 封装层次更高。