模组固件的二次开发、App或者面板的二次开发都会用到涂鸦平台提供的API和SDK,那么API和SDK到底是什么呢?又有什么区别呢?
一、API是什么?
API ,Application Programming Interface即应用程序接口。API提供用户编程时的接口,是一些预先定义的函数,目的是提供应用程序与开发人员基于某软件或硬件得以访问一组例程的能力,而又无需访问源码,或理解内部工作机制的细节。
以涂鸦开发者进行自定义面板的开发为例,涂鸦文档中心提供了API文档。跳转链接:API-文档中心-涂鸦开发者不难发现该API文档介绍了一些方法、函数的功能以及在使用时需要的参数,并提供了示例。通过调用这些函数可以无需具体知道这些函数的代码,快速实现自定义面板的二次开发。
涂鸦文档中心还提供了微信小程序开发、固件二次开发等的API文档。
二、SDK是什么?
SDK ,Software Development Kit 即软件开发工具包。SDK包含开发的相关文档、范例和调试工具等等。SDK被开发出来是为了减少程序员工作量的。
比如——
Tuya IoTOS SDK 是涂鸦独创的 IoT OS 操作系统级别的云端SDK,提供了按照业务需求选择组件,定制 SDK 的能力,是涂鸦开发者的利剑,具备轻量级、互联互通、安全传输、组件丰富、快速开发等关键能力。涂鸦开发者想实现开发出某种功能,可以不用从头开始,有效降低开发门槛、缩短开发周期。
以涂鸦标准模组SDK开发为例,可用于各类Wi-Fi智能产品的开发,涂鸦开发者可以基于涂鸦的模组自行开发固件。
如下图所示(以Wi-Fi芯片SDK为例),在涂鸦IoT平台上创建自定义方案产品;在硬件开发页面选择涂鸦标准模组SDK开发方式,即可下载开发固件的SDK。
下载的SDK目录如下所示,可以看到涂鸦Wi-Fi芯片SDK是一个包含了示例demo、库文件、编译工具链以及编译脚本的工具包,不需要开发者进行任何其他的配置,直接就可以在当前的 SDK 产物目录环境下,进行开发、编译操作。在代码编写完成之后,可以通过SDK提供的各种工具集对代码的稳定性、性能等等各个方面进行验证和分析。
三、API和SDK的区别
综上所述,API是具有特定功能的函数或者接口,API定义一种能力,一种接口的规范;而SDK是一个工具包;SDK实际上包含了API的定义。