Interface de programmation

Une Interface de programmation (en anglais Application Programming Interface ou 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 interface en tant que telle est quelque chose d'abstrait; les composants réalisant celle-ci étant des implémentations. Idéalement il peut y avoir plusieurs implémentations pour une même interface. 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 interface 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 interface 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.

Etude connexe

See also: Interface de programmation, API de VoIP, Application programming interface, Bibliothèque logicielle, Fonction (informatique), Implémentation, Logiciel libre, Norme, Portable operating system interface, Session Initiation Protocol