SlideShare a Scribd company logo
High quality library
from scratch
Tools, technologies and acceptance to
Boost
Antony Polukhin
Полухин Антон
Boost libraries maintainer (LexicalCast, Any, TypeIndex, Conversion)
+ Boost.CircularBuffer, Boost.Variant
Table of contents
Generic part:
* The Idea
* Portability
* License
* Testing tools
* Documentation
* Checking interest
Boost only:
* Requisitions
* Review
* After Acceptance
The Idea
* find a problem
* search for existing solutions
* get the Idea of how to solve the problem
The Idea
Portability
Better portability means more users and more
attention to the library.
* Platforms: Linux, Windows, MacOS, Android
* Standards: C++14 C++11 C++98
C++14 Library (Hana)
C++14 Library (Hana)
License
Choose according to library purpose:
* educational: LGPL Apache BSD MIT Boost
* making money: [A]GPL+Commercial
* making money in Russia: Commercial
You may have no choice if you forked the project
Testing
Testing is essential for high quality library!
- tests must be run often
- test must cover all the library functionality
- static analysis tools are welcomed
Testing in Boost
Testing in Boost
Testing at Github
- TravisCI
- Coveralls
- Coverity
TravisCI
TravisCI
TravisCI
Coveralls
Coveralls
Coveralls
Coverity
Documentation
* make `gh-pages` branch
* push HTML to it
* PROFIT:
Documentation
* Motivation
* Quick Start
* Tutorial covering basic use cases
* Reference documentation
* How to compile and link
* Rationale for design decisions
Checking interest
* requests for new features
* comments on API
* requests for documentation clarification
* good ideas and useful links
You are not ought to implement all requests!
Acceptance to Boost
* Requirements:
http://www.boost.org/development/requirements.html
* Boost Library Incubator
http://blincubator.com/
* Review manager
The Review
After acceptance
The end
Make your ads || business at
http://top-me.org/

More Related Content

PPTX
How We Test Linux
ODP
Introduction to Version Control
PDF
Библиотека Boost с нуля на примере Boost.DLL
PDF
Debugging and Profiling C++ Template Metaprograms
PDF
Конверсия управляемых языков в неуправляемые
PDF
Address/Thread/Memory Sanitizer
PDF
Практика Lock-free. RealTime-сервер
PPTX
Асинхронность и сопрограммы
How We Test Linux
Introduction to Version Control
Библиотека Boost с нуля на примере Boost.DLL
Debugging and Profiling C++ Template Metaprograms
Конверсия управляемых языков в неуправляемые
Address/Thread/Memory Sanitizer
Практика Lock-free. RealTime-сервер
Асинхронность и сопрограммы

More from Platonov Sergey (20)

PPTX
Евгений Зуев, С++ в России: Стандарт языка и его реализация
PPTX
Алексей Кутумов, C++ без исключений, часть 3
PPTX
Евгений Рыжков, Андрей Карпов Как потратить 10 лет на разработку анализатора ...
PPT
Евгений Крутько, Многопоточные вычисления, современный подход.
PDF
Тененёв Анатолий, Boost.Asio в алгоритмической торговле
PPTX
Павел Беликов, Опыт мигрирования крупного проекта с Windows-only на Linux
PDF
Дмитрий Кашицын, Вывод типов в динамических и не очень языках II
PDF
Дмитрий Кашицын, Вывод типов в динамических и не очень языках I
PDF
QML\Qt Quick на практике
PDF
Визуализация автомобильных маршрутов
PDF
Функциональный микроскоп: линзы в C++
PDF
C++ exceptions
PPTX
Как мы уменьшили количество ошибок в Unreal Engine с помощью статического ана...
PDF
HPX: C++11 runtime система для параллельных и распределённых вычислений
PPTX
Ranges calendar-novosibirsk-2015-08
PDF
Использование maven для сборки больших модульных c++ проектов на примере Odin...
PDF
Дракон в мешке: от LLVM к C++ и проблемам неопределенного поведения
PDF
One definition rule - что это такое, и как с этим жить
PDF
DI в C++ тонкости и нюансы
PPTX
Аскетичная разработка браузера
Евгений Зуев, С++ в России: Стандарт языка и его реализация
Алексей Кутумов, C++ без исключений, часть 3
Евгений Рыжков, Андрей Карпов Как потратить 10 лет на разработку анализатора ...
Евгений Крутько, Многопоточные вычисления, современный подход.
Тененёв Анатолий, Boost.Asio в алгоритмической торговле
Павел Беликов, Опыт мигрирования крупного проекта с Windows-only на Linux
Дмитрий Кашицын, Вывод типов в динамических и не очень языках II
Дмитрий Кашицын, Вывод типов в динамических и не очень языках I
QML\Qt Quick на практике
Визуализация автомобильных маршрутов
Функциональный микроскоп: линзы в C++
C++ exceptions
Как мы уменьшили количество ошибок в Unreal Engine с помощью статического ана...
HPX: C++11 runtime система для параллельных и распределённых вычислений
Ranges calendar-novosibirsk-2015-08
Использование maven для сборки больших модульных c++ проектов на примере Odin...
Дракон в мешке: от LLVM к C++ и проблемам неопределенного поведения
One definition rule - что это такое, и как с этим жить
DI в C++ тонкости и нюансы
Аскетичная разработка браузера
Ad

Recently uploaded (20)

PDF
Internet Downloader Manager (IDM) Crack 6.42 Build 41
PPTX
Operating system designcfffgfgggggggvggggggggg
PPT
Introduction Database Management System for Course Database
PDF
Which alternative to Crystal Reports is best for small or large businesses.pdf
PDF
Odoo Companies in India – Driving Business Transformation.pdf
PPTX
Introduction to Artificial Intelligence
PDF
SAP S4 Hana Brochure 3 (PTS SYSTEMS AND SOLUTIONS)
PDF
PTS Company Brochure 2025 (1).pdf.......
PPTX
Transform Your Business with a Software ERP System
PDF
Addressing The Cult of Project Management Tools-Why Disconnected Work is Hold...
PDF
Designing Intelligence for the Shop Floor.pdf
PDF
Digital Systems & Binary Numbers (comprehensive )
PDF
medical staffing services at VALiNTRY
PDF
Design an Analysis of Algorithms II-SECS-1021-03
PDF
Softaken Excel to vCard Converter Software.pdf
PDF
Adobe Illustrator 28.6 Crack My Vision of Vector Design
PPTX
CHAPTER 2 - PM Management and IT Context
PDF
How to Migrate SBCGlobal Email to Yahoo Easily
PDF
top salesforce developer skills in 2025.pdf
PDF
Navsoft: AI-Powered Business Solutions & Custom Software Development
Internet Downloader Manager (IDM) Crack 6.42 Build 41
Operating system designcfffgfgggggggvggggggggg
Introduction Database Management System for Course Database
Which alternative to Crystal Reports is best for small or large businesses.pdf
Odoo Companies in India – Driving Business Transformation.pdf
Introduction to Artificial Intelligence
SAP S4 Hana Brochure 3 (PTS SYSTEMS AND SOLUTIONS)
PTS Company Brochure 2025 (1).pdf.......
Transform Your Business with a Software ERP System
Addressing The Cult of Project Management Tools-Why Disconnected Work is Hold...
Designing Intelligence for the Shop Floor.pdf
Digital Systems & Binary Numbers (comprehensive )
medical staffing services at VALiNTRY
Design an Analysis of Algorithms II-SECS-1021-03
Softaken Excel to vCard Converter Software.pdf
Adobe Illustrator 28.6 Crack My Vision of Vector Design
CHAPTER 2 - PM Management and IT Context
How to Migrate SBCGlobal Email to Yahoo Easily
top salesforce developer skills in 2025.pdf
Navsoft: AI-Powered Business Solutions & Custom Software Development
Ad

High quality library from scratch