C++

Paylaş:

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

Paylaş:

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

Diego Rodriguez-Losada Gonzalez

Baş Mimar, JFrog

C++23 ve daha önceki standartların benimsenme düzeyleri şaşırtıcı değil: Benimsenme paternleri kısa zaman aralığı içinde önceki yıllarla neredeyse aynı. C++23, 2023'te %10 benimsenme gösterdi ve bu oran 2020'deki C++20 benimsenme oranından (%12) biraz daha düşük. Bunun, C++23 ile kıyaslandığında C++20'nin sunduğu yeni özelliklerin sayısıyla ilgisi olabilir.

Inbal Levi

MPGC Services Ltd (Millennium) Baş Yazılım Mühendisi, WG21 komite üyesi

Yerleşik Yazılım ve Oyun sektörlerinde önemli bir oranda C++20 ile çalışıldığını görmek harika. Bu sürüm, çalışma zamanı performansını büyük ölçüde ön plana çıkararak bu sektörler için oldukça faydalı olacak şekilde derleme süresi becerilerini genişletiyor. Gelecek yıllarda C++23 için de benzer benimsenme oranlarını görmeyi umuyorum.

Bryce Adelstein Lelbach

NVIDIA Baş Mimarı

Uygulamalar daha gelişmiş hâle geldiği ve özellikler tamamlanmış olduğu için C++20'nin benimsenmesinde anlamlı yüksek bir sıçrayış yaşandı. Gelecek birkaç yılda topluluğun çoğunluğunda "temel" diyalekt olarak C++17'den C++20'ye büyük bir geçiş gözlemleyeceğimizi düşünüyorum.

C++ standartlarına geçiş

Diego Rodriguez-Losada Gonzalez

Baş Mimar, JFrog

C++98/03 kullananların %57'si farklı bir stardarda geçmeyi planlamıyor mu? Bu, hayal kırıklığı yaratabilir, ancak genel olarak katılımcıların yalnızca %8'inin hâlâ C++98/03'ü kullandığı göz önüne alındığında, bu, dünyadaki C++ kodunun yalnızca yaklaşık %4'ünün bu eski standartta kaldığı anlamına gelir ki bu da fena sayılmaz ve diğer programlama dillerine benzerdir.

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

Diego Rodriguez-Losada Gonzalez

Baş Mimar, JFrog

Yapı sistemlerinde ve ekosistemde C++20 modüllerini desteklemek için yakın zamanda çok sayıda geliştirme yapılırken gelecek yıl C++20 modülleri kullanmayı planlayan (üretimde kullanacaklarını tahmin ediyorum) katılımcıların yarısı bunun fazla iyimser olduğunu düşünüyorum. Gelecek 12 ay içerisinde bu seviyeye erişebileceğimize inanmıyorum.

Inbal Levi

MPGC Services Ltd (Millennium) Baş Yazılım Mühendisi, WG21 komite üyesi

Geleneksel olarak yenilikleri yavaş bir şekilde benimsemekle bilinen Yerleşik Yazılım dünyasında özelliklerin hızlı benimsendiğini görmekten çok mutluyum. Ayrıca bunun C++20'nin yerleşik alan için sunduğu harika avantajlarla da ilgili olduğuna inanıyorum.

Bryce Adelstein Lelbach

NVIDIA Baş Mimarı

Gerçekte kaç kişinin modülleri kullanmayı denediğini merak ediyorum. Çok fazla ilgi olsa da modüller pek benimsenmedi.

C++ geliştirmesi için en çok hangi IDE'yi veya düzenleyiciyi kullanıyorsunuz?

Diego Rodriguez-Losada Gonzalez

Baş Mimar, JFrog

Piyasaya açık bir şekilde Microsoft ve JetBrains hâkim. VS Code'un hızlı yükselişi, sonunda (en azından C++ kullanıcıları arasında) yavaşlıyor gibi görünüyor ve üç büyük oyuncu olan CLion, VS ve VS Code için eşit kullanım oranlarıyla istikrarlı hâle gelmeye başladı.

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

Diego Rodriguez-Losada Gonzalez

Baş Mimar, JFrog

%29'luk bir kesimin C++ kodları için hâlâ birim testi yazmaması üzücü bir durum. Bu oran yıllar içinde yavaşça düşse de yeterince hızlı düşmüyor. Dilin geleceği, bu gibi sorunların çözülmesine de bağlı.

Inbal Levi

MPGC Services Ltd (Millennium) Baş Yazılım Mühendisi, WG21 komite üyesi

Çerçevesiz birim testi yazan geliştiricilerin sayısını görmek şaşırtıcı. Toplulukta paket yöneticiler konusunu tanıtmaya yönelik bir çaba var ve bu çabanın, hem birim testi yazmayanlar hem de yazarken çerçeve kullanmayanlar için gelecek yıllarda bu sayının düşmesini sağlamasını umut ediyorum.

C++'ta üçüncü taraf kitaplıklarınızı nasıl yönetiyorsunuz?

Diego Rodriguez-Losada Gonzalez

Baş Mimar, JFrog

Gittikçe daha az geliştiricinin talimatları kullanarak manuel bir şekilde kitaplık derlediğini görmek güzel bir gelişme. Otomatik hâle getirilmiş çözümler kullanmanın, C ve C++ ekosistemlerine özel bu uygulamayı daha da azaltacağına dair umut vadediyor.

Inbal Levi

MPGC Services Ltd (Millennium) Baş Yazılım Mühendisi, WG21 komite üyesi

Bunun, C++ topluluğu genelinde paket yöneticilerinin geniş çaplı desteğinin gerekli olduğunun harika bir göstergesi olduğunu düşünüyorum.

Bryce Adelstein Lelbach

NVIDIA Baş Mimarı

Önünde sonunda, bu paket yöneticilerinin (vcpkg, Conan vb.) yeterince gelişmiş olduğu ve varsayılan standart olarak yaygın bir şekilde kullanılmaya başladığı bir dönüm noktasına erişebiliriz. Ancak henüz o aşamada değiliz.

Hangi proje modellerini veya derleme sistemlerini düzenli olarak kullanıyorsunuz?

Bryce Adelstein Lelbach

NVIDIA Baş Mimarı

CMake'in pazar payında düşüş, Ninja'nın pazar payında ise yükseliş görmek oldukça ilgi çekici. Bu, farkında olduğum bir trend değildi. Belki yalnızca geçici bir heyecan olabilir, ancak CMake'in şu ana kadarki hızlı yükselişi, ulaşabileceği en yüksek seviyeye ulaştığını gösteriyor olabilir.

Hangi derleyicileri düzenli olarak kullanıyorsunuz?

Projelerinizde C++'ın yanı sıra başka hangi programlama dillerini kullanıyorsunuz?

Diego Rodriguez-Losada Gonzalez

Baş Mimar, JFrog

Python, C++ geliştiricilerinin alet çantası için bir başka oldukça kullanışlı araç.

Bryce Adelstein Lelbach

NVIDIA Baş Mimarı

C++ ile birlikte JavaScript ve Rust'ın daha sık kullanılması burada trend olarak görülüyor. Rust'ın artan popülerliği göz önünde bulundurulduğunda Rust ve C++ için daha hızlı büyüme olmaması şaşırtıcı. Bu, yeni projelerin aksine mevcut projelerde Rust kullanmanın daha zor olabileceğini işaret ediyor.

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ıyorsunuz?

Bryce Adelstein Lelbach

NVIDIA Baş Mimarı

Burada IDE'nin sağladığı analiz araçlarının kullanımındaki düşüşün, GitHub Eylemleri'nde Clang-tidy/ClangFormat/Clang statik analiz aracı yürütürken olduğu gibi statik analizleri CI'larına entegre eden kullanıcıların göstergesi olduğunu düşünüyorum.

Ekibiniz veya siz kod analizini nasıl yapıyorsunuz?

C++ proje yapı sürelerini optimize etmek için hangi araç veya stratejileri kullanıyorsunuz?

Diego Rodriguez-Losada Gonzalez

Baş Mimar, JFrog

Beş ila 10 yıl önce C++ IDE piyasasına Windows'a özel olan Visual Studio tek ürün olarak hakimdi. İnsanlar yalnızca iyi bir IDE'ye erişim için Windows'ta geliştirmeye alışıktı. Bugün ise bu alanda kullanıcılar için harika olan JetBrains ve Microsoft gibi başlıca iki tedarikçi var. Visual Studio Code ve CLion sayesinde IDE'ler, Windows olmayan cihazlarda geliştirme yapanlar için daha erişilebilir.

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.

Herhangi bir soru ya da öneriniz varsa lütfen bizimle surveys@jetbrains.com adresinden iletişime geçin.