User:Tancre/Prototyping/API

From XPUB & Lens-Based wiki

API

Application Programming Interface

What is an API?

Sooo an API is basically an application that works on a meta-level and permits the exchange of informations between two software services through the use of protocols.

It is really interesting the idea of API's ecosystem >> It would be nice to explore in a graphical way the system of relations between different software services and API's that permits those relations.

Types of API's

Methods of access

  • Software libraries & Frameworks
  • OS (POSIX)
  • Remote
  • Message-Oriented Middlewere (MOM)
  • Web

Styles of Organizzations

  • Procedural
  • Object-oriented
  • Service-oriented
  • Resources-oriented


History of API's

'60

As libraries, but problems of distribution for the lack of a dystributed system.

'70-'80

Emergence of a distributed system and possibility of exchange by remote through the Remote Procedure Call (RPC) systems, that uses the Interface Definition Languages (IDL), or alternatively on techniques based on Message Oriented Middleware, such as IBM MQSeries, through the use of "queues".

late '80- early '90

Emergence of the commercial WWW and evolution of the distributed system in advanced client-server topologies (1990's "fallacies of distributed computing") Emergence of the Object-oriented programming (OOP), API's as objects, and possibilities of remote access to objects as Common Object Request Broker Architecture (CORBA) for open systems and DCOM from Microsoft, through the use of IDL.

late '90

2000

Web API

Sources

wikipedia IT & ENG
limswiki
Alan Frye - What is an API? /Types of API? /A bit of API history?