APPLICATION PROGRAMMING INTERFACE


An 'application programming interface' (API) is a source code interface that a computer application, operating system or library provides to support requests for services to be made of it by a computer program.[1] An API is similar to an application binary interface (ABI) in that it specifies 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]
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 does not get involved with implementation details.
Two well known APIs are the Single UNIX Specification and the Microsoft Windows API.
An API is often a part of a software development kit (SDK).
The term API is used in two related senses:

★ A coherent interface consisting of several classes or several sets of related functions or procedures.

★ A single entry point such as a method, function or procedure.

Contents
Release policies
Some example APIs
See also
References
External links

Release policies


Two general lines of API publishing policies :
# 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.
# Some companies make their APIs freely available. For example, until the release of Windows Vista Microsoft made most of its API information public, so that software would be written for the Windows platform.
It is to be expected that companies base their choice of publishing policy on maximizing benefit to themselves.

Some example APIs



★ The PC BIOS call interface

Single UNIX Specification (SUS)

Windows API

Java Platform, Standard Edition API

Java Platform, Enterprise Edition APIs

ASPI for SCSI device interfacing

Carbon and Cocoa for the Macintosh OS

OpenGL cross-platform 3D graphics API

DirectX for Microsoft Windows

Simple DirectMedia Layer (SDL)

Google Maps API

YouTube API

See also



Application binary interface (ABI)

Open Service Interface Definitions (OSID)

Plugin

Document Object Model

Web service

Mashup (web application hybrid)

References


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

External links



How to design a good API and why it matters-PDF

The trends and the role of API-driven mashup building tools in the enterprise computing

Service-Oriented Architecture (SOA): The Road to Enterprise Application Integration (EAI)

Organized list of API references with fast as-you-type search

This article provided by Wikipedia. To edit the contents of this article, click here for original source.

psst.. try this: add to faves