python sdk是什么_SDK 和 API 的区别是什么?
API
本地函数api
讲个小故事:研发人员A开发了软件A,研发人员B正在研发软件B。
有一天,研发人员B想要调用软件A的部分功能来用,但是他又不想从头看一遍软件A的源码和功能实现过程,怎么办呢?
研发人员A想了一个好主意:我把软件A里你需要的功能打包好,写成一个函数。你按照我说的流程,把这个函数放在软件B里,就能直接用我的功能了!
其中,API就是研发人员A说的那个函数。
这就是API的诞生。
云端接口api
也就是说,API是需要别人协助的,API提供者会给你提供服务,你只需要写一段代码调用这个API,把相关请求发给服务提供者,服务提供者会把处理好的结果发给你,这就实现了API的调用。而SDK则是相当于软件的提供者把他们提供服务的代码交给你了。你拿到SDK实现自给自足,就可以绕过服务的提供者直接把自己之前想做的事利用SDK很快的在当地实现而和软件提供者毫无瓜葛。API即“应用程序编程接口”,是一些预先定义的函数,目的是作为“介面”沟通两个不同的东西,提供应用程序与开发人员基于某软件或硬件得以访问一组例程的能力,而又无需访问源码,或理解内部工作机制的细节。
其实就是别人已经写好的可以实现特定功能的函数,而你只需要根据他提供好的接口,也就是调用他的方法,传入他规定的参数,然后这个函数就会帮你实现这些功能。
API即“应用程序编程接口”,是一些预先定义的函数,目的是作为“介面”沟通两个不同的东西,提供应用程序与开发人员基于某软件或硬件得以访问一组例程的能力,而又无需访问源码,或理解内部工作机制的细节。
sdk
SDK即“软体开发工具包”,一般是一些被软件工程师用于为特定的软件包、软件框架、硬件平台、操作系统等建立应用软件的开发工具的集合。通俗点是指由第三方服务商提供的实现软件产品某项功能的工具包。
通常SDK是由专业性质的公司提供专业服务的集合,比如提供安卓开发工具、或者基于硬件开发的服务等。也有针对某项软件功能的SDK,如推送技术、图像识别技术、移动支付技术、语音识别分析技术等,在互联网开放的大趋势下,一些功能性的SDK已经被当作一个产品来运营。
开发者不需要再对产品的每个功能进行开发,选择合适稳定的SDK服务并花费很少的经历就可以在产品中集成某项功能。
SDK
就是 Software Development Kit 的缩写,翻译过来——软件开发工具包。这是一个覆盖面相当广泛的名词,可以这么说:辅助开发某一类软件的相关文档、范例和工具的集合都可以叫做SDK。
SDK被开发出来是为了减少程序员工作量的。
比如——
有公司开发出某种软件的某一功能,把它封装成SDK(比如数据分析SDK就是能够实现数据分析功能的SDK),出售给其他公司做开发用,其他公司如果想要给软件开发出某种功能,但又不想从头开始搞开发,直接付钱省事。
区别
最后,贴近生活讲讲两者的关系:
有一杯密封饮料,它的名字叫做“SDK”。
饮料上插着吸管,吸管的名字叫“API”。
把你叫做“XX系统”。
如果你想喝到SDK里的饮料(让系统拥有SDK中的功能),你必须通过API这根吸管来实现(通过API连接你的系统和SDK工具包),否则你就喝不到饮料。
所以:
SDK=放着你想要的软件功能的软件包
API=SDK上唯一的接口
不知道你这次真的懂了没?
通俗语言解释
API
前端调用后端数据的一个通道,就是我们俗说的接口,通过这个通道,可以访问到后端的数据,但是又无需调用源代码。
SDK
工程师为辅助开发某类软件的相关文档、范例和工具的集合,使用SDK可以提高开发效率,更简单的接入某个功能。
举例说明:一个产品想实现某个功能,可以找到相关的SDK,工程师直接接入SDK,就不用再重新开发了。
相关文章
- Python 爬虫之Scrapy框架
- python魔法方法之-Python __repr__()方法:显示属性
- Python任意参数的数量/预习课python基础
- Python怎么就火起来了?学会python可以做的兼职
- Python初学者如何系统的学习python————Python入门学习指南--内附学习路径
- python能做什么软件?Python到底能干嘛,一文看懂
- python的列表推导式和生成器表达式对比
- 零基础入门Python之后,学习结束后找什么工作?工资多少?
- python接口自动化--Json 数据处理---一次爬坑记(详解)
- Python: ISO 8601 format datime
- 《Python高手之路(第3版)》——1.3 版本编号
- python学习之基于Python的人脸识别技术学习
- 比Python快得吓人,PyPy极简入门,Python进阶必备
- Python代码规范
- 学习像 python 这样的编程语言的先决条件
- 【Python行业分析5】BOSS直聘招聘信息获取之热词图wordcloud
- PDB调试Python程序
- 解决Android SDK Manager下载问题和android studio每次启动都要在fetching Android sdk compoment information
- 【Python分布式服务框架】python实现gRPC服务
- 华为OD机试 - 吃火锅(Python) | 机试题+算法思路+考点+代码解析 【2023】
- 【Python基础】循环输出随机数例子:生存游戏
- 【Python基础】我的第一个 python 程序
- python AttributeError: module ‘lib‘ has no attribute ‘X509_V_FLAG_CB_ISSUER_CHECK‘
- 学习笔记(55):Python实战编程-Scrollbar
- sdk 今日头条_字节跳动又一Android开源力作!全新视频动画特效SDK
- python web开发基于正则的动态路由映射和通过路径/路由传参(Tornado框架、Django框架)