前序系列文章>>>

【涂鸦物联网足迹】物联网主流通信方式

我们系列文章,都会围绕如何完成一款智能“隔空接吻机”的开发。希望能帮到各异地恋or异国恋的情侣们!

本文我们会大概讲解API及SDK的定义介绍吧~

一、API:Application Programming Interface,应用程序编程接口

先来个国(ke)际(yi)惯(tiao)例(guo)的百科介绍:

API(Application Programming Interface,应用程序接口)是一些预先定义的函数,或指软件系统不同组成部分衔接的约定。用来提供应用程序与开发人员基于某软件或硬件得以访问的一组例程,而又无需访问源码,或理解内部工作机制的细节。

我们通过几个例子来说明一下吧:

举例A:

就Howard的“隔空接吻机”原型而言,假设我们把APP端交给供应商来做,那么供应商如果想要拿到设备里的数据,就需要我们提供一个API,让供应商能够在不需要了解设备的构造而直接访问。粉色框框部分就是API~

举例B:

举一个生活中的例子吧。你的男/女朋友给你买了一杯奶茶(这里推荐杨枝甘露,超好喝),那么你为了喝到里面的的饮料(虽然你不知道里面到底有什么),可以用过一根吸管去喝到。这根吸管就是API。

举例C:

想象一下,你在家要烧水。那么你的烧水步骤如下:

水壶装满水;

插上插头

按烧水开关

等水烧好。

在上面这个过程中,API即使你家的插口,只要你用水壶的插头插上这个插口,就可以使用发电站提供的电了(如有错误,请指教)。

OK,通过上面三个例子,我猜大家对API应该有了一定的了解了。API的应用在生活中处处可见,欢迎大家在本文下面多举几个例子。

那么在物联网中,接下来,我们来介绍一下SDK

二、SDK:Software Development Kit,软件开发工具包

 国(ke)际(yi)惯(tiao)例(guo):

软件开发工具包是一些被软件工程师用于为特定的软件包、软件框架、硬件平台、操作系统等创建应用软件的开发工具的集合,一般而言SDK即开发 Windows 平台下的应用程序所使用的SDK。它可以简单的为某个程序设计语言提供应用程序接口API的一些文件,但也可能包括能与某种嵌入式系统通讯的复杂的硬件。一般的工具包括用于调试和其他用途的实用工具。SDK还经常包括示例代码、支持性的技术注解或者其他的为基本参考资料澄清疑点的支持文档。

我们再来举例说明一下。

举例A:

   假设我们“隔空接吻机”已经有了一个App。App里为了获取用户的位置信息,内置了某地图的应用,那么情侣们每次打开APP的时候,会有以下3个流程:

情侣A打开“隔空接吻机”App;

“隔空接吻机”App唤醒内置的地图应用;

地图应用反馈用户所在的地理位置信息;

情侣双方能够看到对方的地理位置。

在以上过程中,“隔空接吻机”App里内置的地图应用,即我们所说的SDK。

SDK 还是很好理解的,我们就不举那么多例子来说明啦。如果大家有更通俗易懂的例子,可以在下方留言~

三、API和SDK的关系

API和SDK,在一个端到端开发中,有着非常重要的地位。同样,我们来通过一个例子来说明一下他们的关系吧~

这次我们就不用我们的“接吻机”来举例了,以“乐高”为例吧:

API:乐高积木的“颗粒”(用来连接两个乐高积木);

SDK:一大包乐高积木,里面有各种小工具

通过API和SDK,就能够完成一个完整的乐高!

希望通过这篇文章,能够让大家对API和SDK有个简单粗暴地了解!

【涂鸦物联网足迹】API及SDK介绍的更多相关文章

  1. 【涂鸦物联网足迹】涂鸦云平台消息服务—顺带Pulsar简单介绍

    前序系列文章>>> [涂鸦物联网足迹]涂鸦云平台标准指令集 开放消息平台主要通过 Pulsar 主动推送各种事件数据给外部合作伙伴,以满足合作伙伴对消息实时性和消息持久化的要求. 一 ...

  2. 【涂鸦物联网足迹】用煲仔饭来说明IaaS/PaaS/SaaS的区别

    最近在准备一些科普性的知识内容,发现大家对于一些基础性的知识概念还是有点模糊.今天先来简单介绍一下IaaS/PaaS/SaaS的区别~ 其实还有一个On-Premises(本地部署)的概念,也可以一并 ...

  3. 云之讯融合通讯开放平台_提供融合语音,短信,VoIP,视频和IM等通讯API及SDK。

    云之讯融合通讯开放平台_提供融合语音,短信,VoIP,视频和IM等通讯API及SDK. undefined 全明星之极验证 - SendCloud undefined [转载]国内外几个主流的在线开发 ...

  4. 李洪强iOS开发之-环信02_iOS SDK 介绍及导入

    李洪强iOS开发之-环信02_iOS SDK 介绍及导入 iOS SDK 介绍及导入 iOS SDK 介绍 环信 SDK 为用户开发 IM 相关的应用提供的一套完善的开发框架.包括以下几个部分: SD ...

  5. 开源.Net Standard版华为物联网北向接口SDK

    最近用到了华为的物联网平台API,但是官方没有.Net版的SDK,所以就自己封装了一个,开源出来给有需要的朋友,同时也算是为.Net Core的发展做点小贡献~ 源码地址:https://github ...

  6. ASP.NET Web API 路由对象介绍

    ASP.NET Web API 路由对象介绍 前言 在ASP.NET.ASP.NET MVC和ASP.NET Web API这些框架中都会发现有路由的身影,它们的原理都差不多,只不过在不同的环境下作了 ...

  7. ASP.NET Web API 开篇示例介绍

    ASP.NET Web API 开篇示例介绍 ASP.NET Web API 对于我这个初学者来说ASP.NET Web API这个框架很陌生又熟悉着. 陌生的是ASP.NET Web API是一个全 ...

  8. ar技术序章-SDK介绍和选择

    转自: http://blog.csdn.net/kun1234567/article/details/10402535 ar技术序章-SDK介绍和选择 分类: Augmented Reality20 ...

  9. API 与 SDK

    API 和SDK是软件行业的两个缩写词. API (Application Programming Interface)=应用程序编程接口 通过一套套的要求,用来管理应用程序之间的沟通.一个API相当 ...

随机推荐

  1. 抓包工具Charles使用

    设置Reason:最近接触一个APP后台项目,但是不知道APP各个操作访问对应的是后台的哪个接口,迫切需要使用一个抓包工具one by one Charles  Free  简单上手快,首选 下载:h ...

  2. day35 Pyhton 网络编程02

    一内容回顾 网络基础 网络应用开发架构 B/S架构   浏览器直接作为客户端的程序 C/S架构 B/S是特殊的C/S osi七层模型 应用层  python代码   http  https  ftp  ...

  3. spring boot:用dynamic-datasource-spring-boot-starter配置多数据源访问seata(seata 1.3.0 / spring boot 2.3.3)

    一,dynamic-datasource-spring-boot-starter的优势? 1,dynamic-datasource-spring-boot-starter 是一个基于springboo ...

  4. eclipse 开发常见问题集锦

    问题1: eclipse导入外部项目,中文显示乱码(如下图) 方案:项目名-->右键属性-->如下图: 问题2: jsp/html页面eclipse双击打开,代码在工作区不显示(如下图:) ...

  5. vue响应式原理整理

    vue是数据响应性,这是很酷的一个地方.本文只为理清逻辑.详细请看官方文档 https://cn.vuejs.org/v2/guide/reactivity.html vue的data在处理数据时候, ...

  6. Redis集群环境搭建实践

    0 Redis集群简介 Redis集群(Redis Cluster)是Redis提供的分布式数据库方案,通过分片(sharding)来进行数据共享,并提供复制和故障转移功能.相比于主从复制.哨兵模式, ...

  7. Map 和 Json 互转

    Json 转 Map<String,String> String query = "{tableName:\"iov_biz_car_info\",selec ...

  8. Luogu P5307 [COCI2019] Mobitel

    题意 有一个 \(r\times c\) 的矩阵 \(a\),矩阵的每个位置都有一个正整数,求从左上角走到右下角并且满足路径上数字乘积之和大于 \(n\) 的方案数. \(\texttt{Data R ...

  9. Java学习的第三十六天

    1.2.1 public class cjava { public static void main(String[]args) { int a,b; a='A'; b='B'; System.out ...

  10. axios前端登录

    1.创建一个Login.vue页面 1.1 写页面 views/Login.vue 在 views/components 下创建 Login.vue 页面 1.2 src/router/index.j ...