Bibliothèque logicielle

Page d'aide sur l'homonymie Pour les articles homonymes, voir Bibliothèque (homonymie).

En informatique, une bibliothèque logicielle est une collection de routines, qui peuvent être déjà compilées et prêtes à être utilisées par des programmes [1], [2]. Les bibliothèques sont enregistrées dans des fichiers semblables, voire identiques aux fichiers de programmes [3], sous la forme d'une collection de fichiers de code objet rassemblés [2] accompagnée d'un index permettant de retrouver facilement chaque routine [3].

Les bibliothèques sont apparues dans les années 1950, et sont devenues un sujet incontournable de programmation. Elles sont utilisées pour réaliser des interfaces de programmation, des framework, des plugins ainsi que des langages de programmation. Les routines contenues dans les bibliothèques sont typiquement en rapport avec des opérations fréquentes en programmation : manipulation des interfaces utilisateur, manipulation des bases de données ou les calculs mathématiques [2].

Les bibliothèques sont manipulées par l' éditeur de lien et le système d'exploitation. Les manipulations sont différentes suivant que la bibliothèque est statique ou partagée. Les emplacements et les noms des bibliothèques varient selon les systèmes d'exploitation.

Utilisation

En informatique, une routine est un ensemble d'instructions qui prend en charge une certaine opération et produit un résultat [4]. Les bibliothèques sont apparues dans les années 1950, sous la forme d'un magasin contenant des lots de cartes perforées ou des rouleaux de bande magnétique sur lesquels étaient enregistrées des routines [3]. Les programmeurs pouvaient choisir les bandes magnétiques à utiliser dans leurs programmes [3].

Les bibliothèques sont utilisées pour mettre en œuvre des interfaces de programmation [5] ainsi que des frameworks et des plugins et peuvent être incorporées dans les langages de programmation.

Une interface de programmation (abr. API pour Application Programming Interface) est un ensemble documenté et standardisé de routines par lesquelles un logiciel offre des services à d'autres logiciels. Les routines sont mises à disposition, compilées et emballées sous la forme d'une bibliothèque logicielle. La documentation spécifie comment le logiciel consommateur peut interagir avec le logiciel fournisseur en utilisant les routines [5]. Les interfaces de programmation sont un sujet incontournable de la programmation contemporaine et un logiciel se sert typiquement de nombreuses interfaces de programmation [5].

Les frameworks sont des collections de classes (lots de routines) semi-finies qui, utilisées ensemble, forment le squelette d'un programme. Ils permettent la construction d'un programme par assemblage et dérivation de composants [6]. Les frameworks se distinguent des interfaces de programmation par le fait que les interfaces de programmation comportent des routines qu'un programme va utiliser, tandis que les framework sont des bibliothèques qui utiliseront les routines du programme [7].

Les plugins sont des bibliothèques logicielles qu'une application recherche en vue d'étendre ses fonctionnalités. Cette technique est utilisée par exemple par les navigateurs web pour prendre en charge l'affichage d'animations ou de vidéos [5].

Programmer et exploiter des bibliothèques fait partie des utilisations ordinaires des langages de programmation généralistes. Si dans les premiers langages de programmation les fonctionnalités étaient délimitées par le lexique du langage, les langages de programmation récents ont un lexique très réduit et beaucoup de fonctionnalités sont apportées par des bibliothèques standard qui accompagnent le langage de programmation [8]. Par exemple la bibliothèque standard de C contient une collection normalisée de routines permettant de manipuler des fichiers, d'écrire des textes, d'utiliser la mémoire, ou de faire des calculs [5].

Other Languages
العربية: مكتبة برمجية
eesti: Teek
Bahasa Indonesia: Pustaka perangkat lunak
日本語: ライブラリ
norsk nynorsk: Programvarebibliotek
தமிழ்: நிரலகம்
中文: 函式庫