Bu sorular yalnızca C++'ı üç ana programlama dilinden biri olarak seçen geliştiricilere gösterilmiştir.

C++

Hangi C++ standardını/standartlarını düzenli olarak kullanıyorsunuz?

12%40%30%42%18%11%C++98 / C++03C++11C++14C++17C++20Emin değilim
Matt GodboltCompiler Explorer oluşturucusu

"Modern C++ kullanımının benimsendiğini görmek güzel. 5 katılımcıdan 1'inin en yeni standartlarla çalışması harika. Gittikçe daha fazla sayıda geliştirici de gelecek yıl en azından C++17'ye geçmeyi düşünüyor. Modüller ve konseptler bu geçişi hızlandıran güçlü motivasyon kaynakları gibi görünüyor.”

C++ standartları geçişi

41%17% 9%17%17%Hayır, planlamıyorumC++11'eC++14'eC++17'yeC++20'ye
Andreas KlingSerenityOS ve ilişkili YouTube kanalı için üretici

"C++17 kullanan çok sayıda geliştiricinin C++20'yi benimsemeye hevesli olması oldukça mantıklı görülüyor.”

Mevcut projenizde gelecek 12 ay içinde bu C++20 özelliklerinden herhangi birini kullanmayı planlıyor musunuz?

48%46%33% 5%31%ModüllerKonseptlerCoroutine'lerDiğerHiçbiri
Andreas KlingSerenityOS ve ilişkili YouTube kanalı için üretici

"Modüller beklendiği gibi grafiklerde ilk sırada yer alıyor. C++ derleme süreleri her yıl daha kötüye gidiyor. Geliştiricilerin bu trende direnmek için modüllerden yararlanmaya başlaması oldukça ilginç."

En çok hangi IDE'yi/metin düzenleyiciyi kullanıyorsunuz?

28%26%24% 6% 3% 2% 2% 2%VSCode (Visual Studio Code)CLionVisual StudioVi/VimQtCreatorEmacsSublimeXcode
Bütün sonuçlar

Eğer kullanıyorsanız, hangi birim testi altyapısını/altyapılarını düzenli olarak kullanıyorsunuz?

32%11% 9% 5% 4% 2%30%16% 4%Google TestCatchCppUnitBoost.TestdoctestCppUTestC++ için birim testleri yazmıyorumBirim testleri yazıyorum, ancak herhangi bir Framework kullanmıyorumDiğer

Matt GodboltCompiler Explorer oluşturucusu

"Geliştiricilerin yalnızca üçte birinin bugüne kadar hiç birim testi yazmadığını görmek üzücü."

C++ içinde üçüncü taraf kitaplıkları nasıl yönetiyorsunuz?

26%23%21%21% 9% 7% 5% 1%14% 5%Kütüphane kaynak kodu, derlememin bir parçasıTalimatları kullanarak kütüphaneleri ayrıca derledimİnternetten önceden derlenmiş kütüphaneleri indirdimSistem paket yöneticisine güveniyorumvcpkgNugetConanbuild2Yukarıdakilerden hiçbiri, herhangi bir bağımlılık kullanmıyorumDiğer
Matt GodboltCompiler Explorer oluşturucusu

"Katılımcıların neredeyse üçte biri iyi bir paketleme çözümü ihtiyacı duyuyor. Kitaplıkları ayrı bir şekilde derlemek, önceden derlemek ya da sistem paketi yönetimi kullanmak ya ekstra geliştirici eforu ya da tümünün derlenmesi için üçüncü taraf desteği anlamına geliyor. Bu da yeni sürümler için geride kalmaya neden olduğundan derleyicileri yükseltme ya da değiştirme konularında karmaşayı artırıyor.”

Andreas KlingSerenityOS ve ilişkili YouTube kanalı için üretici

"Bu sorunu çözme konusunda çok sayıda rakip çözüm olmasaydı C++ tercih edilmezdi. Ancak kimi zaman bu çözümlerden birini seçip uyguladığımızda bizim için daha iyi olup olmayacağını da merak etmiyor değilim."

Geçerli projenizde (iş veya okul) hangi hata raporlama yöntemlerine izin veriliyor?

80%
İstisnalar
54%
Sayısal hata kodları
20%
Başarı/başarısızlık sonucuna göre sınıf türleri

Eğer kullanıyorsanız, hangi proje modelini/modellerini veya derleme sistemini/sistemlerini düzenli olarak kullanıyorsunuz?

55%36%31%10% 9% 9% 6% 6%CMakeMakefileVisual Studio projesiGradleNinjaXcode projesiÖzel tasarım sistemQmake
Bütün sonuçlar

Düzenli olarak hangi derleyiciyi/derleyicileri kullanıyorsunuz?

GCCClangMSVCIntelMikro denetleyicileriçin derleyiciÖzel bir yazılımDiğerGCC78%Clang43%MSVC30%Intel9%Mikro denetleyiciler için derleyici7%Özel bir yazılım2%Diğer1%
Matt GodboltCompiler Explorer oluşturucusu

"Açık kaynak derleyicilerinin, düzenli olarak kullanılan derleyici listesinde en üst sırada yer aldığını görmek ilginç. Kendi deneyimlerime göre Linux'ta MSVC derleyicileriyle çalışmak mümkün değil, ancak her zaman Windows programcılarının sayısının bizi geçeceğini ve MSVC kullanımının daha yüksek olacağını düşünürdüm."

Andreas KlingSerenityOS ve ilişkili YouTube kanalı için üretici

"GCC'nin Clang'dan daha çok kullanıldığını görmek ilginç. Deneyimlerime dayanarak GCC'nin C++20 ile birlikte daha iyi ilerleme göstereceğine inanıyorum.”

Projelerinizde C++ ile birlikte hangi diğer programlama dillerini kullanıyorsunuz?

45%31%21%15%15%12%11%11%PythonCKabuk programlama dilleri(bash/shell/powershell)JavaJavaScriptSQL(PL/SQL, T-SQL ve diğer SQL programlama eklentileri)C#HTML / CSS
Bütün sonuçlar

Siz ya da ekibiniz kılavuza uyum veya diğer bir tür kod kalitesi/incelemesi için aşağıdaki araçlardan hangisini/hangilerini kullanıyor?

38%23%21%17%11% 7% 4% 3% 2% 1%Kullandığım IDE tarafından sağlanan bir araçClang-tidyClangFormatClang-analyzer / Clang Static AnalyzerCppcheckCpplintCoverityStackPVS-StudioParasoft C/C++test
Bütün sonuçlar

Andreas KlingSerenityOS ve ilişkili YouTube kanalı için üretici

"Otomatik kod biçimlendirmeye hak ettiği önem hâlâ verilmiyor. Gülünç gelse de ClangFormat gibi bir araç kullandığınızda kodlama stiliniz için başka bağımsız değişkene ihtiyacınız kalmaz."

Zaman ayırdığınız için teşekkür ederiz!

Raporumuzu faydalı bulduğunuzu umuyoruz. Bu raporu arkadaşlarınızla ve meslektaşlarınızla paylaşın.

JetBrains Tech Insights Lab'e katılın

JetBrains ürünlerinin kullanımını daha kolay ve çok daha güçlü hâle getirmek için anketlere ve kullanıcı deneyimi çalışmalarına katılın. Araştırmamıza katılarak ödül kazanma şansına da sahip olursunuz.

Eğer herhangi bir soru ya da öneriniz varsa, bizimle surveys@jetbrains.com adresinden temasa geçebilirsiniz.