Les bibliothèques (programmation)
Comme nous l'avons vu dans la section "les fonctions", un programme informatique est optimisable en mettant en évidence certains blocs de code sous forme d'une ou plusieurs fonctions afin de réduire sa taille tout en réutilisant ces bouts de code un peu partout dans notre programme. Pour aller encore plus loin, nous pouvons rassembler ces fonctions dans une structure particulière appelée bibliothèque, appelée aussi library en anglais, pour optimiser encore notre code et ce, dans la perspective de réduire la taille de notre exécutable ou script. Ce format de script ou de code est généralement une solution qui nous permet de partager un ensemble de fonctions, de structures ou de bases de données auxquelles nous pouvons faire référence à chaque fois que nous en avons besoin.
Dans ce même principe, si vous souhaitez regrouper ou rassembler un ensemble de fonctions, de données, etc. et que vous souhaitez les partager avec d'autres amis, collègues, ou sur Internet ... il est fortement recommandé de créer votre propre bibliothèque de code.
Définition informatique
Les bibliothèques en codage, appelées aussi librairies en référence à leur nomination en anglais, sont un ensemble de codes utiles pas seulement pour les développeurs expérimentés. Ces bouts de code permettent essentiellement de simplifier la solution globale, de l'optimiser et de la rationaliser.
Le schéma simplifié ci-dessous schématise comment un code source fait appel à plusieurs bibliothèques en même temps durant son exécution:

Le principe de fonctionnement des bibliothèques
Pour vous expliquer comment fonctionnent les bibliothèques, appelées aussi libraries en anglais, dans l'univers de la programmation informatique, nous allons introduire l'exemple d'un afficheur LCD que nous souhaitons piloter avec notre carte Arduino :
Imaginons donc que nous avons acheté un écran LCD et que nous souhaitons afficher le mot "Hello electro-Robot" avec un simple code écrit en C++ pour notre Arduino. Ce dernier est généralement fourni avec un mini-CD ou un lien web pour nous permettre de configurer correctement son pilote et ainsi être reconnu par notre système. En effet, ces fichiers, appelés pilotes, sont un ensemble de bibliothèques fournies qui vont nous permettre de communiquer et transmettre l'information entre notre carte Arduino et l'écran LCD que nous souhaitons programmer.
Le schéma ci-dessous détaille ce mode de fonctionnement :

Prenons maintenant un deuxième exemple dans lequel nous mettons en évidence une bibliothèque personnalisée, dite aussi "propre à nous" ou "personnelle à nous" : imaginons que nous souhaitons écrire en C++ un programme qui simule une porte logique ET (AND) qui utilise une bibliothèque personnalisée. Nous pouvons écrire ces deux blocs de code ainsi :
Le fichier fonction_ET.cpp
bool fonction_ET(bool var1, bool var2) {
return var1 && var2;
}
et le fichier main.cpp
#include <iostream>
#include "fonction_ET.cpp"
int main() {
bool a, b;
std::cout << "Entrez deux valeurs logiques (0 ou 1) : " << std::endl << " a : ";
std::cin >> a;
std::cout << std::endl << " b : ";
std::cin >> b;
bool result = fonction_ET(a, b);
std::cout << std::endl << a << " ET " << b << " = " << result << std::endl;
return 0;
}
À noter : pour que notre code source ci-dessus fonctionne, il est parfois nécessaire d'inclure un fichier d'en-tête, appelé en anglais header. Un fichier header, appelé aussi fichier .h (header) en C++, est un fichier d'en-tête qui nous permet de saisir la liste des déclarations qu'on veut partager entre plusieurs fichiers de notre programme. Dans notre cas de figure, nous n'avons pas besoin de ce fichier .h. Vous pouvez compiler l'exemple proposé ci-dessus en compilant uniquement les deux fichiers fonction_ET.cpp et main.cpp. Il est uniquement demandé d'enregistrer les deux fichiers dans le même répertoire pour que le compilateur ne rencontre pas de problème et ne renvoie pas une erreur de type "fichier non trouvé".
Projet C++ : Exemple de la fonction logique
| < Les fonctions | La programmation |