调查:2024年生产环境中流行的C++框架

面向初学者的在线Python训练器

轻松学习Python,无需理论负担。在浏览器中直接解决带自动检查的实践任务,无需安装任何东西。

开始课程

调查:哪些C++框架在2024年主导生产环境



C++社区继续令人惊讶。尽管该语言已有近40年的历史,它仍然是高负载系统、游戏、金融和嵌入式开发中最受欢迎的语言之一。但团队在实际项目中真正使用哪些工具和库?我们分析了2023-2024年多项公开调查的数据(包括JetBrains开发者调查和C++基金会调查),并总结了关键趋势。



顶级框架:谁在领先?



调查显示,框架明显分为三类:用于GUI和基础设施的“重型武器”、轻量级工具以及小众解决方案。



  • Qt — 无可争议的领导者(约38%的受访者)。用于跨平台GUI应用程序、嵌入式系统,甚至汽车行业(例如仪表盘)。
  • Boost — 34%。与其说是一个框架,不如说是“标准之前的标准库”。Smart pointers、asio、filesystem——这些模块几乎出现在每两个生产代码中就有一个。
  • POCO — 约12%。广泛应用于服务器端开发(REST API、网络服务)和物联网。
  • OpenCV — 9%。机器视觉、图像和视频处理——每个计算机视觉项目都离不开它。
  • Folly(来自Facebook/Meta)— 5%。在高负载后端和社交网络中越来越受欢迎。


意外热门

今年,调查中首次出现了Abseil(Google)和nlohmann/json。前者是转向C++17/20的公司中Boost的替代品,后者是处理JSON的事实标准。有趣的是,7%的受访者表示他们根本不使用第三方框架——只使用STL和自建工具。



为什么框架选择至关重要?

开发者指出了选择框架的三个主要标准:

  • 性能 — 特别是在实时系统中(游戏、金融)。
  • ABI稳定性 — 避免在更新时重新编译整个项目。
  • 社区和文档 — Qt和Boost在这方面无可匹敌。


趋势:C++走向何方?

调查证实了从单体框架向模块化库的逐步转变。越来越多的团队使用Conan或vcpkg来管理依赖项,而不是包含整个框架。同时,对C++20的兴趣明显增长——模块、协程和范围降低了Boost的需求。



结论:如果您正在启动一个新的C++生产项目,请关注Qt(如果需要GUI)、POCO(用于网络服务)或Abseil(如果团队年轻且喜欢现代标准)。而Boost仍然是万能工具——即使项目形式上使用C++20,它依然被熟知、喜爱并继续使用。

推荐库