首页
社区
课程
招聘
[旧帖] [推荐]应用程序编程接口API 详解 0.00雪花
发表于: 2010-1-9 16:12 1764

[旧帖] [推荐]应用程序编程接口API 详解 0.00雪花

2010-1-9 16:12
1764
很多初学者对于API这个词不太理解,在这里解释一下.

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

随着软件规模的日益庞大,我们需要把复杂系统划分成小的组成部分,编程接口的设计十分重要。

程序设计的实践中,编程接口的设计首先要使系统的职责得到合理划分。

良好的接口设计可以降低系统各部分的相互依赖,提高组成单元的内聚性,降低组成单元间的耦合程度,

从而提高系统的维护性和扩展性。

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有诸多不同设计。

用于快速执行的接口通常包括函数,常量,变量与数据结构。

也有其它方式,如通过解释器,或是提供抽象层以遮蔽同API实现相关的信息,确保使用API的代码无需更改而适应实现变化。

[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

收藏
免费 0
支持
分享
最新回复 (11)
雪    币: 8
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
谢谢楼主,学习了
2010-1-9 18:06
0
雪    币: 5417
活跃值: (3502)
能力值: ( LV5,RANK:75 )
在线值:
发帖
回帖
粉丝
3
解释的不错学学
2010-1-9 19:16
0
雪    币: 66
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
api 就是调用函数 :)
2010-1-9 19:28
0
雪    币: 137
活跃值: (19)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
谢谢楼主,学习了
2010-1-9 19:34
0
雪    币: 6
活跃值: (15)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
谢谢楼主了!
2010-1-9 19:38
0
雪    币: 0
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
谢谢楼主省得我们请教百度老师了
2010-1-9 21:28
0
雪    币: 20
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
8
谢谢各位捧场 下次奉献好的文章
2010-1-10 00:08
0
雪    币: 263
活跃值: (11)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
9
API太多了。觉得很费劲!
2010-1-10 00:30
0
雪    币: 96
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
10
不错,,谢谢楼主分享
2010-1-21 17:52
0
雪    币: 27
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
11
壳的作用就是隐藏API函数。。。
2010-1-22 01:34
0
雪    币: 69
活跃值: (13)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
12
辛苦了,学习学习
2010-1-26 00:46
0
游客
登录 | 注册 方可回帖
返回
//