请问一下,一个小的问题, SDK 和 API 的区别有什么区别


譬如 一些开放平台上,有php api 和php sdk 这两个有什么区别呢

小弟不是很明白

php api sdk

插排尾僧人 10 years, 4 months ago

从网络编程的角度来说,API是服务端提供的服务接口,是在服务端的。

SDK是服务端开发人员为客户端调用的便捷、安全等等目的,为客户端编写的一个快速开发包(开发工具)。

具体链路大概是:客户端程序->SDK->API->服务端业务处理。

carrie answered 10 years, 4 months ago

例如C语言,
不确切但是比较形象的来说,
API指的是


 #include<math.h>
int a=sqrt(4);

SDK指的是 libm.so

MISSYO answered 10 years, 4 months ago

简单来说

  • API 应用程序接口

  • SDK 软件开发工具包

当然那么解释说了等于没说。通常意义上,API是一些比较通用的接口,SDK则是针对不同语言不同平台封装好的函数库或者包。

例如,你要请求查询天气的接口,API 通常就是一些 HTTP 协议的 接口地址,那么你调用的时候是


 clinet.get('http://api.example.com/get_weather')

如果是 SDK,可能就帮你封装好了一个函数库,调用的时候大概是这样


 import weatherSDK
weatherSDK.get_weather()

SDK 里面的 get_weather 帮你封装好了 clinet.get 了一些功能

对于一些开发的接口,API和SDK对于client只是是否更方便而已,而对于一些不开放的接口,会提供一些SDK,服务商隐藏了接口的细节。

对于 php ,也没有所谓的编译成二进制的包,API和SDK都是函数库,没有什么差别吧。

大概如此吧

悲剧的小控 answered 10 years, 4 months ago

Your Answer