什什么是API,如何区分API和SDK?
1.API的概念
API即“应⽤用程序编程接⼝口”,是⼀一些预先定义的函数,⽬目的是作为“介⾯面”沟通两个不不同的东⻄西,提供应⽤用程序与开发⼈人员基于某软件或硬件得以访问⼀一组例例程的能⼒力力,⽽而⼜又⽆无需访问源码,或理理解内部⼯工作机制的细节。其实就是别⼈人已经写好的可以实现特定功能的函数,⽽而你只需要根据他提供好的接⼝口,也就是调⽤用他的⽅方法,传⼊入他规定的参数,然后这个函数就会帮你实现这些功能。也就是操作系统留留给应⽤用程序的⼀一个调⽤用接⼝口,应⽤用程序通过调⽤用操作系统的 API ⽽而使操作系统去执⾏行行应⽤用程序的命令(动作)。
从接⼝口interface来说,在计算机领域是指两个不不同事物之间交互的地⽅方,⼤大可以到两个完整的不不同系统,⼩小可以到两段程序。所以这个I就这么理理解。在这个基础上,⼈人和程序交互的地⽅方,叫做UI,user interface,所有⼈人输⼊入的包括⿏鼠标键盘触摸屏声⾳音输⼊入都算。那么程序和程序交互的就叫做API,所有⾮非⼈人对⾮非⼈人交互都通过API进⾏行行交互,所谓交互,其实就是传递数据,触发功能。
2.应⽤用案例例
(1)示例例场景:你是⼀一家⼩小企业,公司⽹网站上有⼀一个表格是⽤用来给客户注册预约的。你想要凭借这些预约细节信息,让客户能够⾃自动在⾕谷歌⽇日程上创建活动。
(2)API使⽤用:这就意味着,你的⽹网站服务器器需要直接与⾕谷歌服务器器进⾏行行对话,在掌握既定细节信息的情况下,申请创建活动。之后,你的服务器器就会接收到⾕谷歌的响应并进⾏行行处理理,然后将相关信息发送回浏览器器,⽐比如说向⽤用户发送⼀一个确认信息。
(3)现在也有公司将API包装成产品
案例例:Weather Underground出售其天⽓气数据API的访问权限给其他⼈人。
3.API的分类
API⼜又分为(Windows、Linux、Unix等系统的)系统级API,及⾮非操作系统级的⾃自定义API。作为⼀一种有效的代码封装模式,微软Windows的API开发模式已经为许多商业应⽤用开发的公司所借鉴,并开发出某些商业应⽤用系统的API函数予以发布,⽅方便便第三⽅方进⾏行行功能扩展。如Google、苹果电脑公司,以及诺基亚等⼿手机开发的API等等。
开放式API。API 接⼝口属于⼀一种操作系统或程序接⼝口,GUI接⼝口属于⼀一种图形操作系统。两者都属于直接⽤用户接⼝口。有时公司会将 API 作为其公共开放系统。也就是说,公司制定⾃自⼰己
的系统接⼝口标准,当需要执⾏行行系统整合、⾃自定义和程序应⽤用等操作时,公司所有成员都可以通过该接⼝口标准调⽤用源代码,该接⼝口标准被称之为开放式API。
4.API应⽤用的重要性
由于近年年来软件的规模⽇日益庞⼤大,常常需要把复杂的系统划分成⼩小的组成部分,编程接⼝口的设计⼗十分重要。程序设计的实践中,编程接⼝口的设计⾸首先要使软件系统的职责得到合理理划分。良好的接⼝口设计可以降低系统各部分的相互依赖,提⾼高组成单元的内聚性,降低组成单元间的耦合程度,从⽽而提⾼高系统的维护性和扩展性。应⽤用程序接⼝口是⼀一组数量量上千、极其复杂的函数和副程序,可让程序员做很多任务作,譬如“读取⽂文件”、“显示菜单”、“在视窗中显示⽹网⻚页”等等,操作系统的API可⽤用来分配存储器器或读取⽂文件。
sdk5.SDK的概念
SDK即“软体开发⼯工具包”,⼀一般是⼀一些被软件⼯工程师⽤用于为特定的软件包、软件框架、硬件平台、操作系统等建⽴立应⽤用软件的开发⼯工具的集合。通俗点是指由第三⽅方服务商提供的实现软件产品某项功能的⼯工具包。
通常SDK是由专业性质的公司提供专业服务的集合,⽐比如提供安卓开发⼯工具、或者基于硬件开发
的服务等。也有针对某项软件功能的SDK,如推送技术、图像识别技术、移动⽀支付技术、语⾳音识别分析技术等,在互联⽹网开放的⼤大趋势下,⼀一些功能性的SDK已经被当作⼀一个产品来运营。
开发者不不需要再对产品的每个功能进⾏行行开发,选择合适稳定的SDK服务并花费很少的经历就可以在产品中集成某项功能。
6.⼆二者对⽐比
SDK相当于开发集成⼯工具环境,API就是数据接⼝口。在SDK环境下调⽤用API数据。
实际上SDK包含了了API的定义,API定义⼀一种能⼒力力,⼀一种接⼝口的规范,⽽而SDK可以包含这种能⼒力力、包含这种规范。但是SDK⼜又不不完完全全只包含API以及API的实现,它是⼀一个软件⼯工具包,它还有很多其他辅助性的功能。
SDK 包含了了使⽤用 API 的必需资料料,所以⼈人们也常把仅使⽤用 API 来编写 Windows 应⽤用程序的开发⽅方式叫做“SDK编程”。
7.通俗语⾔言解释
API
前端调⽤用后端数据的⼀一个通道,就是我们俗说的接⼝口。
通过这个通道,可以访问到后端的数据,但是⼜又⽆无需调⽤用源代码。
SDK
⼯工程师为辅助开发某类软件的相关⽂文档、范例例和⼯工具的集合,使⽤用SDK可以提⾼高开发效率,更更简单的接⼊入某个功能。
举例例说明:⼀一个产品想实现某个功能,可以到相关的SDK,⼯工程师直接接⼊入SDK,就不不⽤用再重新开发了了。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论