|
|
Une Application Programming Interface, plus connue sous le nom d'API, définit la manière dont un composant informatique peut communiquer avec un autre. Dans le cas typique d'une bibliothèque, il s'agit généralement d'une liste de fonctions considérées comme utiles pour d'autres composants.
Une API en tant que telle est quelque chose d'abstrait; les composants fournissant une API étant des implémentations de celle-ci. Idéalement il peut y avoir plusieurs implémentations pour une même API. Par exemple, sous UNIX, la libc définit des fonctions de base utilisées par pratiquement tous les programmes et est fournie par des implémentations propriétaires comme par des implémentations libres, sous différents systèmes d'exploitation.
Une API communément utilisée peut parfois devenir une norme. La libc est par exemple une norme POSIX.
Cependant, dans de nombreux cas, l'implémentation d'une API vient avant la définition formelle de celle-ci et elle se retrouve ainsi souvent liée à des choix faits lors de l'implémentation, choix qui seront imposés aux implémentations alternatives s'il devait y en avoir.