SDK 和 API 。它们可是现在特别流行的好东西,互联网产品接入它们之后会有一些神奇的效果,比如我们常用的支付宝,接入支付宝 SDK,就可以实现支付功能,在线交易;比如现在直播视频比较火,接入直播的SDK,就可以实现在线直播的功能。但是据说这两个词总会让程序猿悲喜交加。因为,不论是销售还是产品等相关人员总会问:SDK和API到底是什么鬼?今天我们就来搞明白它!
API 和SDK 到底是什么
API 和SDK是软件行业的两个缩写词。
API (Application Programming Interface)=应用程序编程接口
通过一套套的要求,用来管理应用程序之间的沟通。一个API相当于你跟它说要求,它会为你完成任务。而且你不需要知道它是如何做到的,你只需要问你想要的东西。
SDK (Software Development Kit)=软件开发工具包
可用于开发面向特定平台的软件应用程序的工具包。举个例子,如果你想组装一个模型车或飞机。在构建这个模型时,需要一整套物品去组装。SDK相当于组装它们所需的工具,包括装配说明等等。
可能你还不够明白,为了便于理解,我们就再举个不完全恰当的例子。
你想吃面包,而你家对街有一家面包店卖面包和烤面包机。API方式是你经过马路去这家面包店买了一个面包。API就是买面包。
而SDK方式是,你向面包店买了一个烤面包机,在自己家里安装好,然后烤了一个面包。SDK是这个面包机和配料。
SDK和API都是服务的消费者,提供SDK和API的都是服务的提供者。为了让使用者高效的来使用厂商提供的功能、系统或平台,需要大量的API/SDK对接。
如何选择API和SDK对接
但是,问题又来了。API和SDK这两种产品对接方式,选择哪种比较好呢?
API和SDK对接,适合最重要。没有哪种最好,只有最适合。
API和SDK最终实现的功能都是一样的,至于采用哪一种,需要结合对接平台的需求(保密程度,特殊需求、开发成本等等)。
选择API
优势:API开发成本低,对接比较简单,可以快速验证商业模式和用户体验。
劣势:API会经过对接平台,厂商可以获取对接平台相关数据信息。
选择SDK
优势:SDK对接后的功能比较稳定,响应速度快,而且对接平台相关数据不会被获取。
劣势:需要开发的环节较多,开发工作量大,对接周期略长。
两种对接方式没有孰优孰劣,对接方可根据自身的实际情况进行选择。但还是要献上我们的建议:
如果对接方研发力量强、合同敏感性高、签约业务量大,建议用SDK服务。
如果对接方想快速对接,建议用API服务。
API方式的对接非常快速,而且许多已运营模块可直接使用,比如,微信签约,自定义的可视化合同模板。此外,之后等技术工作准备充分了,还可以再用 SDK方式。