Les librairies, piliers méconnus du web
Les librairies sont aussi importantes pour la culture que pour les développeurs et… Le web en lui même. On ne va pas évoquer les librairies qui vous permettent de trouver votre prochaine lecture mais de celles sur lesquelles reposent de nombreux outils que nous utilisons en ligne, des fondations méconnues qui permettent aux serveurs ou aux services de fonctionner. Un autre genre de librairies donc pour vous enrichir !
63 VuesVues·0 EnregistrementsEnregistrements·1 avisPiliers du web et et de l’informatique, méconnues de façon générale hors de l’univers des développeurs informatiques, les librairies sont pourtant des éléments essentiels. Ces éléments utilisés un peu partout par beaucoup d’applications, plateformes web, systèmes… sont parfois gérés par une seule et même personne, qui n’est que rarement reconnue pour son travail. En témoigne un pétage de plombs d’un développeur l’an dernier :
Au bout du rouleau, un développeur sabote ses logiciels open source
En effet, son travail était utilisé par de très nombreux autres systèmes :
La première permet d’utiliser des caractères de couleur dans une console d’administration en ligne de commande et, selon GitHub, est utilisée dans plus de 27 000 autres paquets logiciels. La seconde est capable de générer d’importantes quantités de données de test, ce qui est très utile pour le développement de logiciels. Elle est référencée dans plus de 6 000 paquets logiciels.
C’est dire si ces librairies sont fondamentales dans le domaine de la programmation. On les appelle aussi parfois bibliothèques (et ce terme serait finalement plus proche de la réalité) mais l’anglicisme library s’est imposé… D’où librairie.
Illustration de ce qu'est une librairie
Comprendre ce que sont les librairies
Le terme librairie est en fait assez pertinent puisqu’il s’agit plus ou moins d’une bibliothèque dans laquelle le développeur va aller chercher des portions de code, c’est à dire des éléments déjà fonctionnels : le codeur ne va pas tout réécrire, il va aller chercher en fonction de ses besoin ces éléments et ainsi gagner un temps précieux.
La plus connue est probablement node.js.
Ces librairies existent dans différents langages de programmation - dans l’univers du développement, il y a en effet des langages de programmation que l’on utilise en fonction du support (web, application, logiciel) et des besoins. On parle de PHP, Python, C, Java, Ruby, etc… Il n’est pas nécessaire de réinventer la roue à chaque fois, on peut utiliser un modèle ou une roue déjà existante.
Dans ces librairies les fonctions sont “expliquées” : on parle alors de “documenter” (pour faire simple, celui qui écrit cette librairie explique cette partie du code ou cette fonction, ce qu’elle permet de faire et comment le faire). Le fait de documenter (décrire les étapes d’un travail, décrire l’utilisation d’une fonction) mais aussi d’utiliser une librairie permet à un autre développeur de comprendre ce qui a été fait. Surtout s’il doit reprendre le projet ou en utiliser un partie !
Le fait que les librairies soient standards permet aussi de faciliter ce travail.
Le risque de dépendre des librairies
Si une librairie est bien codée, pas de souci. Si une librairie ne dépend pas d’une seule personne (comme nous l’avons vu en haut), pas de souci. Si une librairie contient une faille, cela peut vite devenir un souci, surtout si elle est utilisée un peu partout comme ce le fut en 2021 :
Faille Log4j : un cauchemar pour des millions d'applications Java - Le Monde Informatique
Les librairies et les frameworks
Attention cependant à ne pas confondre les librairies et ce que l’on nomme les frameworks. En effet le second terme étant plus « vendeur », on le retrouve parfois.
“Le développeur utilise une bibliothèque en appelant le code de cette dernière, tandis que le rôle du framework est d’exécuter le code du développeur”. En français, on traduit le mot framework par “cadre applicatif”, car c'est son but, il donne un cadre, une organisation, un squelette, une méthode de travail. Tandis que la librairie, elle, n'offre que des fonctionnalités souvent décorrélées les unes des autres. Source : https://code-garage.fr/blog/librairie-vs-framework-quelle-est-la-difference
L’importance de ces éléments dans le fonctionnement du web, qu’il s’agisse d’applications, de gestion des serveurs, fait que sans eux une grande partie du web tel que nous le connaissons aujourd’hui n’existerait pas, que des outils utilisés sur des millions de machines n’existeraient pas.