Application programming interface

From Wikipedia, the free encyclopedia

Jump to: navigation, search

An application programming interface (API) is a source code interface that an operating system or library provides to support requests for services to be made of it by computer programs.[1] Advanced programming interface is a near synonym with wider application that predates the current common usage. In the original term the concept is meant to represent any well defined interface between two separate programs. The main difference is that this older term does not inculcate a parent-child relationship and can therefore be applied to peer-to-peer situations more logically, e.g. internal kernel services which can present themselves as separate programs.

Contents

[edit] API versus ABI

An API is similar to an application binary interface (ABI) in that both specify details of how two independent computer programs can interact. However, an API is typically defined at a higher level (i.e., in terms of a programming language that can be compiled when an application is built, rather than an explicit low level description of how data is laid out in memory). For example, the Linux Standard Base is an ABI, while POSIX is an API.[2]

[edit] Distinction between API specification and its implementation

The software that provides the functionality described by an API is said to be an implementation of the API. The API itself is abstract, in that it specifies an interface and the behavior of the identifiers specified in that interface, it does not specify how the behavior might be implemented.

[edit] Release policies

There are two general kinds of API publishing policies that are often encountered:

  1. Some companies protect information on their APIs from the general public. For example, Sony used to make its official PlayStation 2 API available only to licensed PlayStation developers. This enabled Sony to control who wrote PlayStation 2 games. Such control can have quality control benefits and potential license revenue.
  2. Some companies make their APIs freely available. For example Microsoft makes most of its API information public, so that software will be written for the Windows platform.

[edit] Some example APIs

[edit] See also

[edit] References

  1. ^ QuickStudy: Application Programming Interface (API). ComputerWorld.
  2. ^ Update on Standards. USENIX.

[edit] External links

bs:Application Programming Interface bg:API ca:API cs:API da:API de:Programmierschnittstelle et:API el:Διεπαφή προγραμματισμού εφαρμογών es:Application Programming Interface eu:Application Programming Interface fa:رابط برنامه‌نویسی کاربردی fr:Interface de programmation gl:API ko:API id:Antarmuka pemrograman aplikasi it:Application programming interface he:ממשק תכנות יישומים lt:Aplikacijų programavimo sąsaja hu:Alkalmazásprogramozási felület nl:Application Programming Interface ja:Application Programming Interface no:API pl:API (informatyka) pt:API ru:Интерфейс программирования приложений sk:Application programming interface fi:Ohjelmointirajapinta sv:Application Programming Interface vi:Giao diện lập trình ứng dụng tr:Yazılım programlama arayüzü uk:API zh:应用程序接口

Views
Personal tools

Toolbox