轻松理解SDK和API以及其区别

API:

概念:API(Application Programming Interface,应用程序编程接口)是一些预先定义的函数,目的是提供应用程序与开发人员基于某软件或硬件得以访问一组例程的能力,而又无需访问源码,或理解内部工作机制的细节。

其实就是调用已经写好的可以实现特定功能的函数,你根据它提供好的接口,传入它规定的参数,就可以调用这个函数帮你实现特定的功能。

例子:别人写好了一个数字求和的方法sum(int a, int b)。
提供给你一个API接口——你只需要调用它这个sum()函数,然后传入这个a,b的值,然后就可以得到计算的结果,你不需要知道这个方法是怎么实现的,知道该怎么调用即可。
如果别人又写了一个两数相乘的方法Mul(int a, int b),那这又称为另一个API。
 

SDK:
概念:软件开发工具包(SDK,全称:Software Development Kit)
一般都是一些软件工程师为特定的软件包、软件框架、硬件平台、操作系统等建立应用软件时的开发工具的集合。

通俗点是指由第三方服务商提供的实现软件产品某项功能的工具包。

SDK就相当于很多API接口和其他文件的集合体。比如你要完成一堆数据的运算,需要用到各种计算方法(比如加减乘数,平方,开方),你去买了一个计算器产品,这个产品包含了一台计算器,一本使用说明(比如接口文档和案例演示)和一些其他文件,你用这个计算器完成了所有数据的运算。整个计算器产品可以看做是一个SDK,它里面有API具体实现(计算器),说明文档(说明书),以及一些其他文件。这个SDK的功能就是计算,可能要算什么不确定,但是你可以通过这个SDK中的某个方法完成,实现你的目的。

二者的区别:

1、.API是一个具体的函数,一个确定的功能,已经明确了它的作用,SDK就像是很多方法的集合体,是一个工具包。

2、SDK除了他提供的完善的接口,他还会给你提供相关的开发环境,而API需要的环境你得自己提供

3、SDK相当于开发集成工具环境,API就是数据接口。在SDK环境下调用API数据。

优劣势:

API:

API开发成本低,对接比较简单,可以快速验证商业模式和用户体验。

API会经过对接平台,厂商可以获取对接平台相关数据信息。

SDK:

SDK对接后的功能比较稳定,响应速度快,而且对接平台相关数据不会被获取。

需要开发的环节较多,开发工作量大,对接周期略长。

发布了36 篇原创文章 · 获赞 6 · 访问量 2039

猜你喜欢

转载自blog.csdn.net/the_sea1/article/details/102658798