stringtranslate.com

Boost (библиотеки C++)

Boost — это набор библиотек для языка программирования C++ , обеспечивающий поддержку таких задач и структур, как линейная алгебра , генерация псевдослучайных чисел , многопоточность, обработка изображений , регулярные выражения и модульное тестирование . Он содержит 164 отдельные библиотеки (начиная с версии 1.76). [3]

Все библиотеки Boost лицензируются по лицензии Boost Software License, позволяющей использовать Boost как с бесплатными , так и с проприетарными программными проектами. [4] Многие из основателей Boost входят в комитет по стандартизации C++ , а несколько библиотек Boost были приняты для включения в Технический отчет C++1 , стандарт C++11 (например, интеллектуальные указатели, потоки, регулярные выражения, случайные значения, коэффициенты, кортежи). ) [5] [6] и стандарт C++17 (например, файловая система, любая, необязательно, вариант, string_view). [7]

Сообщество Boost возникло примерно в 1998 году, когда была выпущена первая версия стандарта. С тех пор он постоянно рос и теперь играет большую роль в стандартизации C++. Несмотря на то, что между сообществом Boost и комитетом по стандартизации нет официальных отношений, некоторые разработчики активны в обеих группах.

Дизайн

Библиотеки предназначены для широкого круга пользователей C++ и областей приложений. Они варьируются от библиотек общего назначения, таких как библиотека интеллектуальных указателей , до абстракций операционной системы , таких как Boost FileSystem , и библиотек, в первую очередь предназначенных для других разработчиков библиотек и опытных пользователей C++, таких как метапрограммирование шаблонов (MPL) и создание предметно-ориентированного языка (DSL). (Прото).

Чтобы обеспечить эффективность и гибкость, Boost широко использует шаблоны . Boost стал источником обширной работы и исследований в области общего программирования и метапрограммирования на C++. [8]

Большинство библиотек Boost основаны на заголовках и состоят из встроенных функций и шаблонов, поэтому их не нужно создавать перед использованием. Некоторые библиотеки Boost сосуществуют как независимые библиотеки. [9] [10]

Связанные люди

В число первоначальных основателей Boost, которые до сих пор активны в сообществе, входит Дэвид Абрахамс . Автор нескольких книг по C++ Николай Йосуттис внес свой вклад в библиотеку массивов Boost в 2001 году. Существуют списки рассылки, посвященные использованию библиотеки Boost и ее развитию, действующие с 2023 года . [11]

Лицензия

Boost лицензируется по собственной бесплатной лицензии с открытым исходным кодом , известной как Boost Software License. [13] Это разрешительная лицензия в стиле лицензии BSD и лицензии MIT , но без требования указания авторства для распространения в двоичной форме . [14] Лицензия была одобрена OSI с февраля 2008 года [15] [16] и считается лицензией свободного программного обеспечения , совместимой с GNU General Public License , Фондом свободного программного обеспечения . [12]

Смотрите также

Рекомендации

  1. ^ «Старые версии» . Проверено 11 апреля 2017 г.
  2. ^ «Версия 1.84.0».
  3. ^ «Список библиотек Boost».
  4. ^ «Лицензия на программное обеспечение Boost» . www.boost.org . Проверено 6 января 2022 г.
  5. ^ «Технический отчет библиотеки». JTC1/SC22/WG21 — Комитет по стандартам C++. 2 июля 2003 года . Проверено 1 февраля 2012 года .
  6. ^ «API потоков для C++».
  7. ^ "Сайт StackOverflow.com" .
  8. ^ Абрахамс, Дэвид; Гуртовой, Алексей (10 декабря 2004 г.). Метапрограммирование шаблонов C++: концепции, инструменты и методы из Boost и за его пределами . Пирсон Образование. п. 408.
  9. ^ "Веб-сайт Азио" .
  10. ^ "Сайт Духа" .
  11. ^ «Повысить списки рассылки (дискуссионные группы AKA)» . Проверено 28 апреля 2020 г.
  12. ^ abcd «Различные лицензии и комментарии к ним - Проект GNU - Фонд свободного программного обеспечения (FSF)» .
  13. ^ «Лицензия на программное обеспечение Boost — версия 1.0» (TXT) . 17 августа 2003 года . Проверено 22 декабря 2023 г.
  14. ^ Дауэс, Беман. «Лицензия на программное обеспечение Boost» . Проверено 1 августа 2016 г.
  15. ^ «Архив списка рассылки Boost» . Архивировано из оригинала 07.11.2016.
  16. ^ «Лицензия на программное обеспечение Boost 1.0 (BSL-1.0) | Инициатива с открытым исходным кодом» . 5 февраля 2008 г.

дальнейшее чтение

Внешние ссылки