Boost (bibliothèques)

Un article de Wikipédia, l'encyclopédie libre.
Boost C++ Libraries
Description de l'image Boost.png.

Informations
Développé par Projet Boost
Dernière version 1.85.0 ()[1]Voir et modifier les données sur Wikidata
Dépôt github.com/boostorg/boostVoir et modifier les données sur Wikidata
Assurance qualité Intégration continueVoir et modifier les données sur Wikidata
Écrit en C++Voir et modifier les données sur Wikidata
Système d'exploitation MultiplateformeVoir et modifier les données sur Wikidata
Environnement Multiplate-forme
Type Ensemble de bibliothèques C++
Licence Licence logicielle Boost
Documentation www.boost.org/doc/libs/releaseVoir et modifier les données sur Wikidata
Site web www.boost.orgVoir et modifier les données sur Wikidata

Boost est une collection de bibliothèques logicielles utilisées en programmation C++.

Référentiel et standards[modifier | modifier le code]

Le projet Boost forme un référentiel complémentaire à la bibliothèque standard C++. Plusieurs bibliothèques initialement développées par le projet Boost ont ensuite été intégrées à cette bibliothèque standard au travers des différentes normes C++11, C++14, C++17, C++20.

L’écriture des modules au sein de cet ensemble est soumise à un comité de lecture, et la plupart des fondateurs du projet font partie du comité du standard C++.

Licence logicielle Boost[modifier | modifier le code]

L’ensemble du référentiel est distribué sous une licence de logiciel libre permissive sans copyleft favorisant son intégration dans du logiciel propriétaire[2].

Conception[modifier | modifier le code]

Les bibliothèques sont destinées à un large éventail d'utilisateurs et de domaines d'application en C++. Elles vont des bibliothèques polyvalentes telles que la bibliothèque de pointeur intelligent, aux abstractions de système d'exploitation telles que Boost FileSystem, en passant par les bibliothèques principalement destinées aux développeurs de bibliothèques et aux utilisateurs avancés de C++, comme la métaprogrammation avec des patrons (MPL) et la création de langage dédié (DSL) (Proto).

Afin de garantir efficacité et flexibilité, Boost fait un usage intensif des templates. Boost a été une source de travaux et de recherches approfondis en programmation générique et en méta-programmation en C++[3].

La plupart des bibliothèques Boost sont basées sur des en-tête, composées de fonction en ligne et de modèles, et en tant que telles, elles n'ont pas besoin d'être construites préalablement à leur utilisation. Certaines bibliothèques Boost coexistent en tant que bibliothèques indépendantes[4],[5].

Notes et références[modifier | modifier le code]

  1. « https://www.boost.org/users/history/version_1_85_0.html »
  2. « FAQ Boost », sur cpp.developpez.com, (consulté le )
  3. David Abrahams et Aleksey Gurtovoy, C++ Template Metaprogramming: Concepts, Tools, and Techniques from Boost and Beyond, Pearson Education, , 408 p.
  4. « Site web Asio »
  5. « Site web Spirit »

Annexes[modifier | modifier le code]

Articles connexes[modifier | modifier le code]

Liens externes[modifier | modifier le code]