Application programming interface

From Wiki @ Karl Jones dot com
Jump to: navigation, search

In computer programming, an application programming interface (API) is a set of routines, protocols, and tools for building application software.

Description

An API expresses a software component in terms of its operations, inputs, outputs, and underlying data types.

An API defines functionalities that are independent of their respective implementations, which allows definitions and implementations to vary without compromising each other.

A good API makes it easier to develop a program by providing all the building blocks. A programmer then puts the blocks together.

APIs and programming GUI components

In addition to accessing databases or computer hardware, such as hard disk drives or video cards, an API can ease the work of programming GUI components.

For example, an API can facilitate integration of new features into existing applications (a so-called "plug-in API"). An API can also assist otherwise distinct applications with sharing data, which can help to integrate and enhance the functionalities of the applications.

API libraries

APIs often come in the form of a library that includes specifications for:

SOAP and REST

In other cases, notably SOAP and REST services, an API is simply a specification of remote calls exposed to the API consumers.

See also

External links

Public APIs

Lists of public APIs