Опрос: какие фреймворки C++ доминируют в продакшене в 2024 году
Сообщество C++ продолжает удивлять. Несмотря на возраст языка (почти 40 лет), он остаётся одним из самых востребованных в высоконагруженных системах, играх, финансах и embedded-разработке. Но какие инструменты и библиотеки реально используют команды в боевых проектах? Мы проанализировали данные нескольких открытых опросов (включая JetBrains Developer Survey и C++ Foundation Survey) за 2023–2024 годы и выделили ключевые тренды.
Топ фреймворков: кто в лидерах?
Опрос показал чёткое разделение на три категории: «тяжёлая артиллерия» для GUI и инфраструктуры, легковесные утилиты и нишевые решения.
- Qt — бесспорный лидер (около 38% респондентов). Используется в продакшене для кроссплатформенных GUI-приложений, встраиваемых систем и даже в автопроме (например, в приборных панелях).
- Boost — 34%. Не столько фреймворк, сколько «стандартная библиотека до стандарта». Smart pointers, asio, filesystem — эти модули есть в каждом втором продакшен-коде.
- POCO — около 12%. Активно применяется в серверной разработке (REST API, сетевые сервисы) и IoT.
- OpenCV — 9%. Машинное зрение, обработка изображений и видео — без него не обходится ни один проект по компьютерному зрению.
- Folly (от Facebook/Meta) — 5%. Растёт популярность в высоконагруженных бэкендах и соцсетях.
Неожиданные фавориты
В этом году в опросах впервые появились Abseil (Google) и nlohmann/json. Первый — как замена Boost в компаниях, переходящих на C++17/20, второй — как стандарт де-факто для работы с JSON. Интересно, что 7% респондентов заявили, что вообще не используют сторонние фреймворки — только STL и самописные утилиты.
Почему выбор фреймворка критичен?
Разработчики отмечают три главных критерия при выборе:
- Производительность — особенно в real-time системах (игры, финансы).
- Стабильность ABI — чтобы не пересобирать весь проект при обновлении.
- Сообщество и документация — Qt и Boost здесь вне конкуренции.
Тренды: куда движется C++?
Опросы подтверждают постепенный уход от монолитных фреймворков в пользу модульных библиотек. Всё больше команд используют Conan или vcpkg для управления зависимостями, а не включают фреймворк целиком. Также заметен рост интереса к C++20 — модули, корутины и ranges снижают потребность в Boost.
Вывод: если вы начинаете новый продакшен-проект на C++, смотрите в сторону Qt (если нужен GUI), POCO (для сетевых сервисов) или Abseil (если команда молодая и любит современный стандарт). А Boost остаётся универсальным солдатом — его знают, любят и продолжают использовать, даже если в проекте формально C++20.