美文网首页
形象理解Api和SDK

形象理解Api和SDK

作者: Jovi_Mac | 来源:发表于2019-04-24 20:17 被阅读0次

原文:https://blog.csdn.net/chenzz2560/article/details/81198582

刚开始学Java的时候不理解API和SDK的区别,感觉两个东西是一样的。在看了网上一些资料以后,对这两者的概念有了一定的理解,在这里记录一下(只针对Java):

API:

概念:API(Application Programming Interface,应用程序编程接口)是一些预先定义的函数,目的是提供应用程序与开发人员基于某软件或硬件得以访问一组例程的能力,而又无需访问源码,或理解内部工作机制的细节。——百度百科

个人理解:在Java中,API相当于是一个别人已经实现了某个功能的说明书。比如别人写了一个两个数字相加求和的方法:

public static int add(int a, int b){ 
    return a + b;
}

然后他提供给你
返回类型 方法名称 功能介绍
int add(int a,int b) 返回a,b两个数的和
这就相当于提供给你一个API接口。你虽然不知道这个方法是怎么实现的,但是知道该怎么调用这个方法。如果别人又写了一个两个数字相乘的方法,那又是一个新的API。就像我们平时看到JDK API 文档,里面提供的一个个方法就是一个API接口,下面图片是String类的部分方法,一个红框就代表一个API接口说明。平时我们说的API接口文档,其实就是API接口的使用说明书,你可以通过API接口文档,了解有哪些API接口,如何使用这些API接口。

SDK:

概念:软件开发工具包(外语首字母缩写:SDK、外语全称:Software Development Kit)一般都是一些软件工程师为特定的软件包、软件框架、硬件平台、操作系统等建立应用软件时的开发工具的集合。

个人理解:SDK就相当于很多API接口和其他文件的集合体。比如你要完成一堆数据的运算,需要用到各种计算方法(比如加减乘数,平方,开方),你去买了一个计算器产品,这个产品包含了一台计算器,一本使用说明(比如接口文档和案例演示)和一些其他文件,你用这个计算器完成了所有数据的运算。整个计算器产品可以看做是一个SDK,它里面有API具体实现(计算器),说明文档(说明书),以及一些其他文件。这个SDK的功能就是计算,可能要算什么不确定,但是你可以通过这个SDK中的某个方法完成,实现你的目的。

两者区别:API是一个具体的函数,一个确定的功能说明,已经明确了它的作用(比如做加法)。而SDK就像是很多方法的集合体,是一个工具。比如你要做加法,你就调用计算机SDK的加法API实现,要做减法就调用减法API实现,无论你想完成什么计算,SDK里总有能实现的方法。再举个例子,比如你要开车去一个地方,车就是SDK,可以让你完成到达目的地的目的。车上的方向盘,灯,发动机,油门,刹车像一个个API实现,你在使用SDK时,就是调用一个个API功能。如果贴心一点的车,可能还带有使用说明(SDK说明文档)。

补充:

1、SDK还有一点是除了他提供的完善的接口,他还会给你提供开发环境。继续上面的计算器和车的比喻,要想计算器和车子可以使用,要给计算器电池,和车子加油,这些都是计算机和汽车运行需要的。例如java的JDK里,除了各种API,还包括了java运行需要的JRE,以及java。

2、现在很多第三方接口运行是通过远程调用的方式,这样的好处是不需要下载对应的SDK,只需要知道API的接口地址。在某种程度上减少了调用他人接口的难度。

相关文章

  • 形象理解Api和SDK

    原文:https://blog.csdn.net/chenzz2560/article/details/81198...

  • Android开发SDK版本号和API level对照表,到An

    SDK版本和API level对应表 SDK 版本名 API LevelAndroid...

  • ARCore:从Android Studio开始

    ARCore为许多最流行的开发环境提供SDK。这些SDK为所有基本的AR特性提供原生API,如运动跟踪、环境理解和...

  • Android.mk文件LOCAL_SDK_VERSION选项

    Api分类 internal api翻译为内部API,理解为供sdk内部使用的API。这类接口最初打算就是不对外公...

  • API和SDK

    讲个小故事: 研发人员A开发了软件A,研发人员B正在研发软件B。有一天,研发人员B想要调用软件A的部分功能来用,但...

  • 讯飞语音识别

    语音识别,科大讯飞提供了sdk和web api,相比于sdk还要下载安装,web api显然clean很多,只要直...

  • Megvii SDK

    Megvii API Megvii API SDK 功能 SDK 使用 文件结构 其中, MGFacepp用于建立...

  • Silk_SDK_API

    SILK_SDK_API Skype Silk SDK API使用说明 The Application Progr...

  • 最通俗易懂的理解API和SDK

    http://c.biancheng.net/cpp/html/2845.html 在C语言中,使用fopen()...

  • Android之隐藏api介绍

    .. 隐藏api和非隐藏api Android P 引入了针对非 SDK 接口(俗称为隐藏API)的使用限制。这是...

网友评论

      本文标题:形象理解Api和SDK

      本文链接:https://www.haomeiwen.com/subject/kzungqtx.html