API

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

Windows API

  操做系统的用户接口
        API函数包含在Windows系统目录下的动态链接库文件中。Windows API是一套用来控制Windows的各个部件的外观和行为的预先定义的Windows函数。用户的每一个动做都会引起一个或几个函数的运行以告诉Windows发生了什么。这在某种程度上很像Windows的自然代码。而其余的语言只是提供一种能自动并且更容易的访问API的方法。当你点击窗体上的一个按钮时,Windows会发送一个消息给窗体,VB获取这个调用并通过分析后生成一个特定事件。
更易理解来讲:Windows系统除了协调应用程序的执行、内存的分配、系统资源的管理外,同时他也是一个很大的服务中心。调用这个服务中心的各类服务(每一种服务就是一个函数)能够帮助应用程序达到开启视窗、描绘图形和使用周边设备等目的,因为这些函数服务的对象是应用程序,因此称之为Application Programming Interface,简称API 函数。WIN32 API也就是MicrosoftWindows 32位平台的应用程序编程接口。凡是在 Windows工做环境底下执行的应用程序,均可以调用Windows API。

 

linux API

        在linux中,用户编程接口API遵循了UNIX中最流行的应用编程界面标准---POSIX标准。POSIX标准是由IEEE和ISO/IEC共同开发的标准系统。该标准基于当时现有的UNIX实践和经验,描述了操做系统的系统调用编程接口API,用于保证应用程序能够在源程序一级上在多种操做系统上移植运行。这些系统调用编程接口主要是经过C库(LIBC)来实现的。

 

       基于互联网的应用正变得愈来愈普及,在这个过程当中,有更多的站点将自身的资源开放给开发者来调用。对外提供的API 调用使得站点之间的内容关联性更强,同时这些开放的平台也为用户、开发者和中小网站带来了更大的价值。
开放是目前的发展趋势,愈来愈多的产品走向开放。目前的网站不能靠限制用户离开来留住用户,开放的架构反而更增长了用户的粘性。在Web 2.0的浪潮到来以前,开放的API 甚至源代码主要体如今桌面应用上,而如今愈来愈多的Web应用面向开发者开放了API。
具有分享、标准、去中心化、开放、模块化的Web 2.0站点,在为使用者带来价值的同时,更但愿经过开放的API 来让站点提供的服务拥有更大的用户群和服务访问数量。
站点在推出基于开放API 标准的产品和服务后,无需花费力气作大量的市场推广,只要提供的服务或应用出色易用,其余站点就会主动将开放API 提供的服务整合到本身的应用之中。同时,这种整合API 带来的服务应用,也会激发更多富有创意的应用产生。
为了对外提供统一的API 接口,须要对开发者开放资源调用API 的站点提供开放统一的API接口环境,来帮助使用者访问站点的功能和资源。
固然,开放API 的站点为第三方的开发者提供良好的社区支持也是颇有意义的,这有助于吸引更多的技术人员参与到开放的开发平台中,并开发出更为有趣的第三方应用。
视频云技术提供商CC视频开放API接口,用户能够在本身的网站后台轻松完成视频的上传、视频播放控制操做,并可批量获取视频及平台信息
        正如在"什么是API"中所说,API函数包含在位于系统目录下的DLL文件中。你能够本身输入API函数的声明,但VB提供了一种更简单的方法,即便用API Text Viewer。 要想在你的工程中声明API函数,只需运行API Text Viewer,打开Win32api.txt或MDB。若是你已经把它转换成了数据库的话,这样能够加快速度。 使用预约义的常量和类型也是一样的方法。 API除了有应用“应用程序接口”的意思外,还特指API的说明文档,也称为帮助文档。

API能够作什么?

常见浏览器API

  • 操做文档的API内置于浏览器中。最明显的例子是DOM(文档对象模型)API,它容许您操做HTML和CSS — 建立、移除以及修改HTML,动态地将新样式应用到您的页面,等等。每当您看到一个弹出窗口出如今一个页面上,或者显示一些新的内容时,这都是DOM的行为。 您能够在在Manipulating documents中找到关于这些类型的API的更多信息。
  • 从服务器获取数据的API 用于更新网页的一小部分是至关好用的。这个看似很小的细节能对网站的性能和行为产生巨大的影响 — 若是您只是更新一个股票列表或者一些可用的新故事而不须要从服务器从新加载整个页面将使网站或应用程序感受更加敏感和“活泼”。使这成为可能的API包括XMLHttpRequest和Fetch API。您也可能会遇到描述这种技术的术语Ajax。您能够在Fetching data from the server找到关于相似的API的更多信息。
  • 用于绘制和操做图形的API目前已被浏览器普遍支持 — 最流行的是容许您以编程方式更新包含在HTML <canvas> 元素中的像素数据以建立2D和3D场景的Canvas和WebGL。例如,您能够绘制矩形或圆形等形状,将图像导入到画布上,而后使用Canvas API对其应用滤镜(如棕褐色滤镜或灰度滤镜),或使用WebGL建立具备光照和纹理的复杂3D场景。这些API常常与用于建立动画循环的API(例如window.requestAnimationFrame())和其余API一块儿不断更新诸如动画和游戏之类的场景。
  • 音频和视频API例如HTMLMediaElement,Web Audio API和WebRTC容许您使用多媒体来作一些很是有趣的事情,好比建立用于播放音频和视频的自定义UI控件,显示字幕字幕和您的视频,从网络摄像机抓取视频,经过画布操纵(见上),或在网络会议中显示在别人的电脑上,或者添加效果到音轨(如增益,失真,平移等) 。
  • 设备API基本上是以对网络应用程序有用的方式操做和检索现代设备硬件中的数据的API。咱们已经讨论过访问设备位置数据的地理定位API,所以您能够在地图上标注您的位置。其余示例还包括经过系统通知(参见Notifications API)或振动硬件(参见Vibration API)告诉用户Web应用程序有用的更新可用。
  • 客户端存储API在Web浏览器中的使用变得愈来愈广泛 - 若是您想建立一个应用程序来保存页面加载之间的状态,甚至让设备在处于脱机状态时可用,那么在客户端存储数据将会是很是有用的。例如使用Web Storage API的简单的键 - 值存储以及使用IndexedDB API的更复杂的表格数据存储。
相关文章
相关标签/搜索