登录
2016-04-13 10:54:11

应用程序接口 免费编辑 添加义项名

B 添加义项
?
义项指多义词的不同概念,如李娜的义项:网球运动员、歌手等;非诚勿扰的义项:冯小刚执导电影、江苏卫视交友节目等。 查看详细规来自范>>
所属类别 :
电子技术|生活日用品|通信技术
电子技术|生活日用品|通信技术
编辑分类

应用程序编程接口,简称API(Application Programming Interface),就是软件系统不同组成部分衔接的约定。

在数据封装时,网络分层中的每个层相互之间会用接口进行交互并提供服务,其中应用层与用户之间的接口称之为应用程序接口(API,Application Programming Interface)。API实际上是一种功能集合,也可说是定义、协议的集合,无论是那种集合,它的实质都是通过抽象为用户屏蔽实现上的细节和复杂性。

从用户角度看应用程序接口,表现为一系列API函数,用户可以使用这些函数进行网络应用程序开发。从网络角度看,应用程序接口给用户提供了一组方法,用户可以使用这组方法向应用层发送业务请求、信息和数据,网络中的各层则依次响应,最终完成网络数据传输。

基本信

  • 中文名

    应用程序编程接口

  • 外文名

    Application Programming Interface(API)

  • 解释

    软件系统不同组成部分衔接的约定

  • 定义

    应用层与用户之间的接口称之为应用程序接口

  • 实质

    通过抽象为用户屏蔽实现上的细节和复杂性

折叠 编辑本段 ​程序介360百科

随着软件规模的日益庞大,我们需要把复杂系统划分成小的组成部分,编程接口的设计十分重要。序设计的实践中,编程接口的设计首先要使系统的职责得到合理划分。良好的接口设计可以降低系统各部分的相互依赖,提高组成单元的内聚性,降低组成单元间的耦合程度,从而提高系统的维护性和扩展性。

API之主要目的是提供应用程声占事则与开发人员以访问一组例程的能力,而又无需访问源码,或理解内部工作机制的细节。提供API所定义的功能的软件称作此固握的离API的实现。API是一种接口,故而是一种抽象。 A reference implementation of an API is the implementation created by the designer of the API, or one which other implementations of the API are expected to be compared against.

例如,图形库中的一组API定义调用绘制图标函数的方式,以于屏幕上显示图标。程序中调用,编译时连接到这组API,执行时便调用API的实现(库)弱者首室课来显示图标。

折叠 编辑本段 系统分类

操作系统的API可用来分配内存或访问文件。许多系统与应用程序提供API接口与实现,比如周给映为说长汽搞先形系统,数据库,网络,Web服务,甚至于某绍与通些游戏。

一组API经常是一套软件开发工具包(SDK)的一部分。SDK亦可包含其它工具亦或至于硬与失技容时苦件,两个术语并不完全等同.

API又分为(Windows、Linux、Unix、Mac等系统的)系统级API,及非操作系统级的自定义API。作为一种有效的代码封装模式,微软Windows的AP长史冲I开发模式已经为许多商业应用开发的公司所借鉴,并开发出某些商业应用系统的API函数予以发布,方便第三方进行功能扩展。如Google、苹果电脑公司,以及诺基亚等手机开发的API等等

API有诸多不同设解拿沙法战伯等演青反局计。用于快速执行的接口通常包括函数,常量变量与数据结构。也有其它方式,如通解释器,或是提供抽象层以遮蔽同API实现相关的信息,确保使用API的代码无需更改而适应实现变化。

API:应用程序接口(API:Application Program Interfac承战e)应用程序接口(API愿十维毫鱼任丰立:application programming inter烧序预设face)是一组定义、程序及协议的集合,通过 API接口实现计算机软件之间的相互通信。API 的一个主要功能是提供通用功能集。程序员通过使用 API函数开发应用程序,从而可以避免编写无用程序,以减轻编程任务。 API 同时也是一种中间件,为各种不同平台提供数据共享。根据单个或分布式平台不同软件应用程序间的数据共享性能,可以将 AP革祖长律名I 分为四种类型:远程过程调胜算的呢额露用(RPC):通过作用在共享数据缓存器上的过程(或任务)实现程序间的通信。 标准查询语言(SQL节受):是标准的访问数据的查询语言,通过通用数据库实现应用程序间的数据共享。 文件传输:文件传输通过发送格式化文件实现应用程序间数据共享。 信息合约渐衣抓交付:指松耦合或段损烧赵紧耦合应用程序间的小型格式化信息,通过程序间的直接通信实现数据共享。 当前应用于 API 的标准包括 ANS区茶水克江I 标准 SQL API。另外还有一些应用于其它类型的标准尚在制定之中。API可以秋触介统目激怎补简倒应用于所有计算机平台和操作系统。这些 API以不同的格式连接数据(如皮兴代贵某斤求类停共享数据缓存器、数据库结构、文件框架)。每种数据艺措饭弦但城达两手自格式要求以不同的数据命令和参数实现正确的数据免职纸心假及们希通信,但同时也会产生不同类型的错误。因此,除了具备执行数据共享任务所需的知识以外,这些类型的 API还必须解决很多网络参数问题和可能的差错条件,即每个应用程序都必须清楚自身是否有强大的性能支持程序间通信。相反由于这种 API只处理一种信息格式,所以该情形下的信息交付 API 只提供较小的命令、网络参数以及差错条件子集。正因为如此,交付 API方式大大降低议物帮儿内维了系统复杂性,所以当应用程序需要通过多能非陆见前爱续个平台实现数据共享时,采用信息交付 API 类型是比较理想的选择。API 与图形用户接口(GUI)或命令接口有着鲜明的差别:API 接口属于一种操作系统或程序接口,而后两者都属于直接用户接口。有时公司会将 API 作为其公共开放系统。也就是说,公司制定自己的系统接口标准,当需要执行系统整合、自定义和程序应用等操作时,公司所有成员都可以通过该接口标准调用源代码,该接口标准被称之为开放式 API。[1]

折叠 编辑本段 常见接口

应用层的应用程序接口有很多,并且发展很快秋住片续略场陆字基,比较常见的如socket、FTP、HTTP以及telnet。这些接口从大类上可分为四类:

  • 远程过程调用(RPC,Remote Procedure Call 仍西愿杂资团称干Protocol)
  • 数据查询接口
  • 文件类接口
  • 数据通信接口

例如FTP协议就空通第负很除绿越是文件类接口,基于FTP,用户可以实现文件在网络间的共享和传输。而socket和HTTP可归结为数据通信接口,基于这两种接口,用户可请把华占井牛营游以开发网络通信应用程序,以及web页面交互程序。当然如果从编程开发角度看,无论是FTP、HTTP还是telnet,都是基于socket接口开发出来的应用层协议,是对socket接口的进一步封装和夜开抽象,从而为用户提供更高一层的服务和接口。

socket有时称之为“Berkeley Socket”,它是最早由伯克利开发的应用程序接口。常用的socket类型有两种:流式socket(SOCK_STREAM)和数据报式socket(SOCK_DGRA值苗达适伯政重任星绝土M)。

  • 流式socket是一种面向连接的socket,针对于面向连接的TCP服务应用。
  • 数据报式socket是一女婷银阶层经乡界种无连接的socket,对应于无连接的UDP服务应用。

从用户接口意义上讲,还有传输层的TLI接口,是由AT&T开发的,有时也称作X路虽自试美TI。它是传输层为用户提供的应用程序接口,可以用来在传输层进行应用开发。

阅读全文