C++

Diese Fragen wurden nur Entwicklern gestellt, die C++ als eine ihrer drei primären Programmiersprachen angegeben hatten.

Welche C++-Standards nutzen Sie regelmäßig?

12%41%39%46%13%C++20C++17C++14C++11C++98 / C++03

Die neuen C++-Standards setzen sich immer mehr durch. Der Anteil der Entwickler, die C++20 verwenden, ist auf 12% gestiegen.

11%36%44%47%18%C++20C++17C++14C++11C++98 / C++03

Bei einigen Fragen, einschließlich dieser, wurden die Ergebnisse in 3 Gruppen aufgeteilt, je nachdem, welche Arten von Software die Befragten entwickeln, und in welchen Bereichen ihre Unternehmen tätig sind. Diese Gruppen repräsentieren die drei Hauptbereiche der C++-Entwicklung: Embedded, Finanzen und Spiele.

Haben Sie vor, in den nächsten 12 Monaten auf einen anderen C++-Standard umzustellen? Wenn ja, auf welchen?

50%14%10%19% 8%Nein, das ist nicht geplantauf C++11auf C++14auf C++17auf C++20

Etwa die Hälfte der befragten C++-Entwickler plant, in diesem Jahr auf einen anderen Standard umzusteigen.

Welche IDE bzw. welchen Editor nutzen Sie bei der C++-Entwicklung am meisten?

26%22%22% 7% 4% 4% 3% 3% 2% 2% 1% 3%Visual StudioCLionVS Code (Visual Studio Code)Vi/VimQtCreatorSublimeXcodeAtomEmacsEclipse CDTNetBeansSonstige

26%25%22% 6% 4% 4% 4% 3% 2% 2% 1% 1%Visual StudioVS Code (Visual Studio Code)CLionVi/VimAtomEmacsQtCreatorXcodeNetBeansSublimeEclipse CDTSonstige

JetBrains hat kürzlich die öffentliche Preview von Rider for Unreal Engine IDE veröffentlicht – wir hoffen, dass die IDE nächstes Jahr in der Tabelle für die Spieleentwicklung vertreten sein wird.

Gibt es Unit-Testing-Frameworks, die Sie regelmäßig nutzen?

31%14% 6% 6% 3% 1%15%34% 4%Google TestCatchBoost.TestCppUnitdoctestCppUTestIch verwende keine FrameworksIch schreibe keine Unit-Tests für C++Sonstige

Catch hat in diesem Jahr Boost.Test und CppUnit überholt und ist auf den zweiten Platz vorgerückt.

31%12% 5% 6% 2% 2%19%32% 2%Google TestCatchBoost.TestCppUnitdoctestCppUTestIch verwende keine FrameworksIch schreibe keine Unit-Tests für C++Sonstige

Welche Abhängigkeits-Manager verwenden Sie in Ihren Projekten?

23%10% 8% 6% 3% 1% 4%49%Ich nutze einen System-Paket-ManagerNugetvcpkgConanbuild2HunterSonstigeKeine

Die Hälfte der C++-Entwickler verwendet keine Tools zur Abhängigkeitsverwaltung.

23%10% 7% 6% 5% 2% 6%46%Ich nutze einen System-Paket-ManagerNugetvcpkgConanbuild2HunterSonstigeKeine

Welche Fehlermeldungsmethoden sind in Ihrem aktuellen Projekt (Arbeit oder Schule) zulässig?

79%Ausnahmen (throw, try,catch)
51%Numerische Fehlercodes(errc, error_code, HRESULTusw.)
22%Erfolgs-/Fehlerklassen (z. B.Boost.Expected,Boost.Outcome)

Gibt es Projektmodelle oder Build-Systeme, die Sie regelmäßig nutzen?

53%35%29% 7% 7% 5% 3% 3% 2% 1% 4%13%CMakeVisual-Studio-ProjektMakefilesXcode-ProjectCustom-BuildsystemQmakeAutotoolsBazelBoost.BuildSConsSonstigeKeine

Wie in den Vorjahren sind CMake, Visual-Studio-Projekte und Makefiles die führenden Build-Ansätze.

54%35%34%11% 7% 7% 4% 3% 3% 2% 4% 8%CMakeMakefilesVisual-Studio-ProjektCustom-BuildsystemQmakeXcode-ProjectAutotoolsBazelBoost.BuildSConsSonstigeKeine

Welche Compiler nutzen Sie regelmäßig?

74%43%32% 9% 5% 3%GCCClangMSVCIntelCustom-EntwicklungenSonstige

GCC hat seinen Anteil zum ersten Mal seit 4 Jahren erhöht, während Clang ein stetiges Wachstum verzeichnet.

79%42%33% 8% 7% 5%GCCClangMSVCIntelCustom-EntwicklungenSonstige

Welche der folgenden Tools verwenden Sie oder Ihr Team zur Durchsetzung von Richtlinien, zur Sicherung der Codequalität oder zur Codeanalyse?

36%23%20%13% 9% 6% 2% 2%IDE-eigene Tools (Visual Studio, ReSharper C++, CLion etc.)Clang-tidyClang-analyzer / Clang Static AnalyzerCppcheckCpplintCoverityParasoft C/C++testStack
Alle Ergebnisse

Die zunehmende Beliebtheit von Clang treibt auch die Popularität der dazugehörigen Tools wie Clang-tidy und Clang-analyzer voran.

Welche der folgenden Quellen für Programmierempfehlungen oder -richtlinien setzen Sie oder Ihr Team aktiv ein?

29%26%24% 9% 5% 5% 3% 3%Reihe „Effective C++“ (Bücher von Scott Meyers)Google C++ Style GuideC++ Core Guidelines – Hauptprojekt (github.com/isocpp/CppCoreGuidelines)C++ Coding Standards (Buch von Herb Sutter und Andrei Alexandrescu)Reihe „Guru of the Week / Exceptional C++“ (Blog/Bücher von Herb Sutter)C++ Core Guidelines – firmenspezifischer, um interne Regeln erweiterter Fork/ZweigAbseil Tips of the WeekHigh Integrity C++ Coding Standard (Programming Research)
Alle Ergebnisse

Danke, dass Sie sich die Zeit genommen haben!

Wir hoffen, dass Sie unseren Bericht nützlich fanden. Teilen Sie diesen Bericht im Freundes- und Kollegenkreis.

Werden Sie Mitglied im JetBrains Tech Insights Lab

Nehmen Sie an Umfragen und UX-Studien teil, um JetBrains-Produkte benutzerfreundlicher und gleichzeitig leistungsfähiger zu machen. Durch die Teilnahme an unserer Forschung können Sie auch Prämien erhalten.

Wenn Sie Fragen oder Anregungen haben, schreiben Sie uns bitte unter surveys@jetbrains.com.

© 2000-2020 JetBrains s.r.o. Alle Rechte vorbehalten.