API的含义究竟是什么?

时间:2011-09-16 05:10:06

标签: api

我在编程语言中搜索了API的定义,但我仍然觉得很难理解。

有人可以用简单的外行人的话来劝告我:

  1. 什么是API?
  2. 如何使用?
  3. 何时何地使用?

14 个答案:

答案 0 :(得分:120)

搜索应该包括维基百科,对于许多编程概念/术语,例如Application Programming Interface非常好

什么是API?

  
    

应用程序编程接口(API)是一组特定的规则(“代码”)和软件程序可以遵循的规范,以便彼此通信。它作为不同软件程序之间的接口,促进了它们的交互,类似于用户界面促进人与计算机之间交互的方式。

  

如何使用?

使用任何一组规则的方式相同。

何时何地使用?

自然取决于领域和API。考虑这些:

  1. The x86 (IA-32) Instruction Set(非常有用; - )
  2. A BIOS interrupt call
  3. OpenGL经常作为C库公开
  4. 核心Windows系统调用:WinAPI
  5. Ruby's core library
  6. 中的类和方法
  7. 浏览器向JavaScript公开的Document Object Model
  8. Web services,例如Facebook's Graph API
  9. 提供的内容
  10. JNI in Java
  11. 等协议的实现

    快乐的编码。

答案 1 :(得分:48)

API是一个界面,您可以通过该界面访问别人的代码或其他人的代码访问您的代码。实际上是公共方法和属性。

答案 2 :(得分:42)

1)什么是API?

API是一份合同。承诺在以特定方式询问时执行所描述的服务。

2)如何使用?

根据合同中规定的规则。 API的重点是定义它的使用方式。

3)何时何地使用?

当2个或更多单独的系统需要协同工作以实现他们无法单独完成的任务时,就会使用它。

答案 3 :(得分:39)

嗯,除了所有的答案,我只是添加一个例子。

正如其他人所说API stands for Application Programming Interface softwares can interact with each other。注意不是人为的互动。

使用位置

例如,您通过信用卡在线购买商品。您将提供信用卡详细信息,然后按继续按钮。它会告诉您您的信息是否正确。为了提供这些结果,背景中有很多东西。

该应用程序会将您的信用卡详细信息发送到远程应用程序,该应用程序将验证您的信息并将结果发回给您的应用程序。在这种情况下使用API​​。

我认为希望它对那些不了解API的初学者有帮助。

另一个例子

天气应用

没有API - 天气应用程序必须打开weather.com网站并像人类一样阅读详细信息。

使用API​​ - 天气应用程序会向weather.com发送消息并接收结果然后显示。

消息来源各种在线资源

答案 4 :(得分:15)

  1. API(应用程序编程接口)是一组定义的函数和方法,用于与底层操作系统或计算机上运行的其他程序或服务进行交互。

  2. 通常通过在软件中建立对库的引用或从dll导入函数来使用它。

  3. 它几乎在所有软件中以某种形式使用,在程序中显式调用或由编译器隐式调用。

答案 5 :(得分:10)

API代表应用程序编程接口,即API是应用程序与某些系统/应用程序/库/等交互的方式。

例如,有OS for OS(WinAPI),API用于其他应用程序(如数据库)和特定库(例如图像处理)等。

API通常以客户端应用程序可以使用的形式开发。对于C / C ++应用程序,它是一个set头文件和动态/静态库。对于Java - 一套罐子。等等。

答案 6 :(得分:7)

它是一组彼此交互的软件组件。它提供了一组函数,变量和对象类,用于创建应用程序,操作系统或任何其他东西。

答案 7 :(得分:6)

在外行人的术语中,我总是说API就像两个说不同语言的人之间的翻译。在软件中,可以使用API​​(或转换器)来消费或分发数据,以便两种不同类型的软件可以进行通信。优秀的软件具有强大的翻译(API),遵循规则和协议的安全性和数据清洁度。

我是营销人员,而不是编码人员。这一切可能都不太正确,但这是我现在试图表达的约10年......

答案 8 :(得分:5)

API是一组命令,函数和协议,程序员可以在为特定操作系统或任何其他软件构建软件时使用这些命令,函数和协议。 API允许程序员使用预定义的函数与操作系统交互,而不是从头开始编写。 所有计算机操作系统,如Windows,Unix和Mac OS,以及Java等语言都为程序员提供了一个应用程序接口。

Source

答案 9 :(得分:4)

Conaider这种情况:

Mark和Lisa秘密地是一对夫妻,由于年龄差异,他们不允许在一起。当没人看的时候,马克和丽莎每天晚上见面。他们已经制定了自己的规则,以便在时机成熟时如何沟通。他站在自己的花园里,把小石头扔到窗前。 Lisa知道现在是时候了,然后通过从窗口挥动并随后打开它来响应,因此Mark可以进入。这就是API的工作原理。 岩石是另一端的初始要求。另一个结束浪潮,打开窗口,基本上意味着“欢迎进入!”#34;。

API几乎就像人类语言,但适用于计算机。

答案 10 :(得分:2)

API定义了一个软件在源级别与另一个软件通信的接口。它通过提供一组标准接口(通常是函数)来提供抽象,即一个软件(通常是更高级别的软件)可以从另一个软件(通常是较低级别的软件)调用。

例如,API可能会通过一系列函数抽象出在屏幕上绘制文本的概念,这些函数提供绘制文本所需的一切。 API仅定义接口;实际提供API的软件称为API的实现。

通常称API为"合同"。这是不正确的,至少在法律意义上,因为API不是双向协议。 API用户(通常是更高级别的软件)对API及其实现没有任何输入。它可以按原样使用API​​,或者根本不使用它:接受或离开它!

API的真实示例是由C标准定义并由标准C库实现的接口。此API定义了一系列基本和基本功能,例如内存管理和字符串操作例程。

答案 11 :(得分:1)

让我们假设您正在开发一款游戏,并且您希望游戏用户在播放之前登录他们的Facebook个人资料(以获取您的个人资料信息),那么您的游戏将如何访问Facebook? 现在来了API.Facebook已经编写了程序(API)供您使用,您必须在您的游戏应用程序中使用这些程序。使用Facebook-API,您可以在您的应用程序中使用他们的服务。这是一个很好的关于API的详细介绍...... http://money.howstuffworks.com/business-communications/how-to-leverage-an-api-for-conferencing1.htm

答案 12 :(得分:1)

我的个人经历how I got to know different kinds of APIs可能有助于理解API。在学习编程时,我在开始时遇到了同样的困难,以掌握这种抽象。维基百科的一篇文章无法帮助我。但是通过体验API的具体示例,可以更容易地理解抽象。

我会很乐意听到这是否有帮助。

答案 13 :(得分:0)

应用程序接口(API)是一组用于构建软件应用程序的例程,协议和工具。 API指定软件组件应如何交互以及在编写图形用户界面(GUI)组件时使用API​​。一个好的API可以通过提供所有构建块来更轻松地开发程序。程序员然后将块放在一起。

源: http://www.webopedia.com/TERM/A/API.html