C++
分享:
这些问题仅向选择 C++ 作为其三种主要编程语言之一的开发者显示。
分享:
Diego Rodriguez-Losada Gonzalez
JFrog 首席架构师
C++23 和早期标准的采用水平并不令人意外:采用模式实际上与近年来相同,只是时间发生变化。2023 年 C++23 的采用率为 10%,略低于 2020 年 C++20 的采用率 (12%),这可能与 C++20 与 C++23 相比带来的新功能数量有关。
Inbal Levi
MPGC Services Ltd (Millennium) 首席软件工程师,WG21 委员会成员
很高兴看到嵌入式和游戏行业中有很大一部分开发者已经在使用 C++20 了。此版本扩展了编译时的能力,这对于那些非常重视运行时性能的行业非常有利。我希望看到在未来的几年里,C++23 也有类似的采用率。
Bryce Adelstein Lelbach
NVIDIA 的首席架构师
C++20 采用率的大幅提升是可以理解的,因为它的实现已经变得更加成熟,而且功能更加完整。我认为在接下来的几年里,我 们将看到从 C++17 到 C++20 的重大转变,后者将成为社区大部分人的“基础”方言。
Diego Rodriguez-Losada Gonzalez
JFrog 首席架构师
57% 使用 C++98/03 的受访者不打算改用其他标准?这可能会令人失望,但总体而言,只有 8% 的受访者仍在使用 C++98/03,这意味着全世界只有约 4% 的 C++ 代码使用旧标准,这还不错,与其他编程语言类似。
Diego Rodriguez-Losada Gonzalez
JFrog 首席架构师
虽然最近在构建系统以及支持 C++20 模块的生态系统方面取得了很大进展,但在我看来,有一半受访者计划在接下来一年内使用 C++20 模块(我认为是在生产中)的数字似乎过于乐观。我认为我们在未来 12 个月内不会实现这一目标。
Inbal Levi
MPGC Services Ltd (Millennium) 首席软件工程师,WG21 委员会成员
我真的很高兴看到嵌入式领域中功能的快速采用,传统上人们认为嵌入式领域的功能采用速度很慢。我相信这也与 C++20 能够为嵌入式领域带来的巨大益处有关。
Bryce Adelstein Lelbach
NVIDIA 的首席架构师
我想知道有多少人真正尝试过使用模块。有很多人对此很感兴趣,但采用率却不高。
Diego Rodriguez-Losada Gonzalez
JFrog 首席架构师
这个市场显然由 Microsoft 和 JetBrains 主导。VS Code 的快速增长似乎终于开始放缓(至少在 C++ 受众中),并且三个主要参与者(CLion、VS 和 VS Code)似乎开始占据同等份额。
Diego Rodriguez-Losada Gonzalez
JFrog 首席架构师
很遗憾,29% 的受访者仍然不为他们的 C++ 代码编写单元测试。即使多年来这一数字一直在缓慢下降,但速度还不够快。这门语言的未来也取决于这一问题是否能够得到解决。
Inbal Levi
MPGC Services Ltd (Millennium) 首席软件工程师,WG21 委员会成员
我惊奇地发现,有许多开发者在编写单元测试时不使用框架。委员会正在努力推广软件包管理器主题,我希望这能够对未来几年这些数字的降低产生影响,无论是对于那些不编写单元测试的人还是那些在编写单元测试时不使用框架的人。
Diego Rodriguez-Losada Gonzalez
JFrog 首席架构师
很高兴看到使用指令手动编译库的开发者越来越少。自动化解决方案的使用有望进一步减少这种做法,而这是 C 和 C++ 生态系统所独有的。
Inbal Levi
MPGC Services Ltd (Millennium) 首席软件工程师,WG21 委员会成员
我认为这是一个很好的迹象,表明整个 C++ 社区对软件包管理器的广泛支持很有必要。
Bryce Adelstein Lelbach
NVIDIA 的首席架构师
我们迟早会到达一个拐点,届时,这些软件包管理器(vcpkg、Conan 等)将变得足够成熟,并得到广泛的使用,从而成为事实上的标准。但是,我们还没有到达这个拐点。
Bryce Adelstein Lelbach
NVIDIA 的首席架构师
非常有趣的是,CMake 的市场份额下降了,而 Ninja 的市场份额却上升了。这是我始料未及的趋势。也许这只是干扰信息,但考虑到 CMake 迄今为止的快速增长,此数据表明它已达到峰值饱和度。
Diego Rodriguez-Losada Gonzalez
JFrog 首席架构师
Python 是 C++ 开发者工具包中另一个非常有用的工具。
Bryce Adelstein Lelbach
NVIDIA 的首席架构师
JavaScript 和 Rust 更多地与 C++ 结合使用似乎是一种趋势。虽然 Rust 越来越受欢迎,但令人惊讶的是,Rust + C++ 的增长速度并没有加快。这表明与新项目相比,在已有项目中使用 Rust 可能更加困难。
Bryce Adelstein Lelbach
NVIDIA 的首席架构师
我认为 IDE 提供的分析工具的减少表明人们将静态分析融入到他们的 CI 中,比如在 GitHub Actions 中运行 Clang-Tidy/ClangFormat/Clang Static Analyzer。
Diego Rodriguez-Losada Gonzalez
JFrog 首席架构师
五到十年前,C++ IDE 市场基本上由一款特定于 Windows 的产品 Visual Studio 主导。过去人们在 Windows 上进行开发只是为了使用一款好的 IDE。如今,我们在这个领域有两个主要供应商 – JetBrains 和 Microsoft,这对用户来说非常好。借助 Visual Studio Code 和 CLion,非 Windows 开发者现在可以更轻松地访问 IDE。